Tartalomjegyzék:

Nagy Arduino LCD óra két riasztással és hőmérséklet -monitorral, IR TV vezérléssel: 5 lépés
Nagy Arduino LCD óra két riasztással és hőmérséklet -monitorral, IR TV vezérléssel: 5 lépés

Videó: Nagy Arduino LCD óra két riasztással és hőmérséklet -monitorral, IR TV vezérléssel: 5 lépés

Videó: Nagy Arduino LCD óra két riasztással és hőmérséklet -monitorral, IR TV vezérléssel: 5 lépés
Videó: Объяснение прошивки Marlin 2.0.x 2024, November
Anonim
Nagy Arduino LCD óra két riasztóval és hőmérséklet -monitorral IR TV távirányítóval vezérelve
Nagy Arduino LCD óra két riasztóval és hőmérséklet -monitorral IR TV távirányítóval vezérelve

Hogyan építsünk egy Arduino -alapú LCD -órát két riasztóval és hőmérséklet -monitorral, amelyet az IR TV távirányítója vezérel.

1. lépés: Leírás

Image
Image

Ez egy LCD -óra, amely DS3231 valós idejű óra modullal készült, és a DS1307 -el ellentétben riasztási és hőmérséklet -figyelési lehetőséggel rendelkezik. Ebben az esetben az LCD képernyőn megjelenik a dátum, az idő, a két riasztás és az aktuális hőmérséklet. A legérdekesebb pedig az, hogy az óra teljes beállítása, valamint az ébresztés némítása a TV távirányítóján keresztül történik.

2. lépés: Alkatrészek

Épület
Épület

Az építéshez szükséges hardver alkatrészek:

-Arduino tábla

-DS3231 RTC kártya

-20X4 LCD kijelző

-I2C Arduino LCD kijelző modul

-RC5 protokoll IR távirányító

-IR vevő

-VEZETTE

-Berregő

-220 Ohm ellenállás

3. lépés: Építés

Épület
Épület
Épület
Épület
Épület
Épület

Az alapkód az egyszerű áramkörű weboldalról származik, és néhány változtatást eszközöltem: Az egyszerűség kedvéért hozzáadtam egy I2C modult az LCD kijelzőhöz, és ennek megfelelően módosítottam a kódot. Hozzáadtam egy kis hangjelzőt is, amely adott frekvenciájú hangot generál, miközben a riasztás aktív.

A DS3231 kártya 5V -os, 20x4 -es LCD -ként és az infravörös vevőegységgel van ellátva, ez az 5V az Arduino -kártyáról származik, az adatlap és az Arduino között 3 adat sorakozik, az SCL -vonal az analóg 5 -ös tűhöz van csatlakoztatva, az SDA pedig az analóg 4 -es és az INT -vonal a 2 -es digitális tűhöz van csatlakoztatva, amely az Arduino külső megszakítócsapja (INT0). A DS3231 megszakítja a mikrokontrollert, ha riasztás van (riasztás1 vagy riasztás2). Az infravörös vevő 3 tűvel rendelkezik: GND, VCC és OUT, ahol az OUT tű csatlakozik az Arduino 3 tűhöz, amely külső megszakító tüske (INT1). Az Arduino 10 érintkezőhöz csatlakoztatott LED riasztásjelzőként szolgál (riasztás1 vagy riasztás2), így ha riasztás van, a DS3231 lehúzza az INT csapot, amely megszakítja a mikrokontrollert (ATmega328P), és a mikrokontroller bekapcsolja a LED -et, itt a távirányító gombja kikapcsolja mind a LED -et, mind az előforduló riasztást. Dekódolnunk kell a távirányítónkat, hogy ismerjük az egyes gombok kódját, mert hozzá kell adnunk az Arduino szoftverhez (kód).

4. lépés: Távirányító

Távirányító
Távirányító

A projektben használt távirányító egy TV IR távirányító RC5 protokollal, ez az alább látható (a használt gombok számozva vannak):

Gomb funkciókódja (hexadecimális formátum)

1 Növelés 0x20

2 Állítsa be az időt és a naptárat 0x10

3 Csökkentés 0x21

4 Riasztások beállítása 0x11

5 Riasztások visszaállítása 0x0C

Ne feledje, hogy ennek a kódnak a távvezérlőt kell használnia az RC5 protokollal, és az ilyen távoli eszközöket leggyakrabban régebbi Philips készülékek használják. Az alábbiakban egy egyszerű "IR protokoll kereső" kód található, amely lehetővé teszi bármely távirányító protokolljának, valamint az egyes gombok értékének egyszerű meghatározását. A képen az általam használt távirányító látható a gombok megjelölt értékeivel és funkcióival.

5. lépés: Séma és kód

Vázlat és kód
Vázlat és kód

Az alábbiakban bemutatunk egy kis kódot az IR vezérlő gombjainak protokoll típusának és értékeinek meghatározásához, valamint a teljes óra kódot

Ajánlott: