7-segmentový displej
Cieľom je zistiť, aký typ displeja máte a rozsvietiť jednotlivé segmenty.
- KROK: Vyskúšajte nasledovné zapojenie:
- pripojte pin 3 (alebo 8) na 7-segmentovom displeji na GND Arduina.
- pripojte niektorý z ostatných pinov na 7-segmentovom displeji (napr. pin 1) na rezistor (niektorú z menšich hodnôt napr. medzi 100Ω a 470Ω)
- rezistor pripojte následne na 5V na Arduine
Ak svieti, máte 7-segmentový displej so spoločnou katódou.
Ak nesvieti, je potrebné zameniť 5V a GND (zapojíme Arduino 5V na displej pin 3, pin 1 na displeji s rezistorom a rezistor prepojíme s GND na Arduine).
Ak nesvieti ani v jednom prípade, buď to je zlé zapojené alebo máte nefungujúci displej.
2. KROK: Prepojte kábel, ktorý je zapojený na pin 1 na displeji na ostatné piny. (UPOZORNENIE: nezapájajte ho na piny 3 a 8). Zapíšte si, ktorému pinu prislúcha ktorý segment displeja.
I2C expander
Cieľom je napojiť expander a nastaviť adresu. K dispozícii máte buď jednoduchšiu čiernu verziu (PCF8574P alebo PCF8574AP) alebo červenú verziu, ktorá obsahuje expander (PCF8574T). V čiernej verzii si identifikujte hornú stranu (na obrázku aj na samotnej súčiastke je taký výrez). Môžete si prelistovať dokumentáciu.
KROK 1:
Podľa schémy alebo nasledovných krokov zapojte:
- VDD (na súčiastke) <–> 5V (na Arduine)
- VSS <–> GND
- SDA <–> A4 pin
- SCL <–> A5 pin
- Adresný pin A0 <–> 5V alebo GND (podľa toho, či ho chcete zapnúť alebo vypnúť)
- Adresný pin A1 <–> 5V alebo GND (podľa toho, či ho chcete zapnúť alebo vypnúť)
- Adresný pin A2 <–> 5V alebo GND (podľa toho, či ho chcete zapnúť alebo vypnúť)
V prípade červenej súčiastky zapájate VCC na 5V, GND na GND, SDA na A4, SCL na A5 a tri adresné piny si nastavíte mechanicky na 0 alebo 1.
KROK 2:
Stiahnite si ARDUINO kód na skenovanie pripojených zariadení. Spustite na svojom Arduine a s pomocou Serial Monitor sledujte na akej adrese sa nájde vaše zariadenie. V prípade čiernej súčiastky je to adresa 0-1-0-0-A3-A2-A1. Teda v prípade, že všetky tri adresné bity sú nastavené na logickú 1, tak adresa je 0b0100111 alebo v hexadecimálnom zápise 0x27. Adresu si zapíšte.
KROK 3:
Pripojte k I2C expanderu 7-segmentový displej. Môžete napojiť všetky piny naraz alebo to vyskúšať osobitne po jednom pine. Zapája sa príslušný pin na expanderi (P0-P7), ktorý pripojíme cez rezistor na 7-segmentový displej. Spolu urobíme 8 prepojení. Pre úsporu káblov porozmýšľajte ako to elegantne zapojiť – napr. priamo napojte rezistor na displej bez použitia káblu medzi nimi a pod.
KROK 4:
Stiahnite si ARDUINO kód na ovládanie displeja. V kóde sa v cykle zobrazujú rôzne číslice na displeji. Skúste nastaviť správne binárne čísla, ktoré rozsvietia displej. Odporúčam začať s jedným číslom, nastavte príslušné segmenty – pravdepodobne využijete pero a papier (prípadne nejakú excel tabuľku) na prepočty. Samozrejme nezabudnite si v kóde nastaviť správnu adresu I2C expandera. Na Wikipedii si viete pozrieť, ktoré písmená a číslice sa dajú na takomto displeji zobraziť.
Buzzer
Cieľom je prehrať nejakú melódiu.
- Zapojte si buzzer – kladný pól na niektorý z PWM pinov (napr. D8). Záporný pól prepojte s GND na Arduine. Odporúčam zapojiť aj nejaký rezistor medzi buzzer a GND (rezistory s menšou hodnotou medzi 100Ω a 470Ω zaručia príjemnejšiu hlasitosť). Ak chcete, môžete vyskúšať ovládanie hlasitosti s použitím potenciometra.
- Stiahnite si kód s pripravenou melódiou. K dispozícii máte aj zoznam tónov s ich frekvenciami (pitches.h). Melódia sa zahrá iba jedenkrát. Pre opakovanie presuňte časť kódu do loop alebo stlačte RESET button na Arduine. Súbor s tónmi a ich frekvenciami si môžete pridať napríklad tak, že pod ikonou serial monitor vpravo si vyberiete New Tab a vložíte to tam. Prípadne si jednotlivé tóny môžete vložiť priamo do samotného kódu.
- Voliteľne si môžete upraviť kód a vyskúšať inú melódiu. Budúci týždeň si môžete melódiu generovať na základe dát z nejakého senzora.