Obsah:

Hodiny, LCD displej, infračervené nastavení: 6 kroků
Hodiny, LCD displej, infračervené nastavení: 6 kroků

Video: Hodiny, LCD displej, infračervené nastavení: 6 kroků

Video: Hodiny, LCD displej, infračervené nastavení: 6 kroků
Video: Using HT1621 6 Digits Seven Segment LCD Display | Lesson 103: Arduino Step By Step Course 2024, Červenec
Anonim
Hodiny, LCD displej, infračervené nastavení
Hodiny, LCD displej, infračervené nastavení
Hodiny, LCD displej, infračervené nastavení
Hodiny, LCD displej, infračervené nastavení

Vytvořte hodiny v reálném čase, které udržují čas v činnosti během několika minut za rok. Kód a komponenty lze snadno přepracovat do jiných projektů.

Tento projekt vyžaduje minimální množství kabeláže a žádné pájení. Časoměřič jsou hodiny reálného času DS3231. Čas je zobrazen na levném 1602 LCD. Oba moduly používají komunikaci I2C. Při připojení k Arduinu I2C používá pouze 2 vodiče na modul. Používám Arduino Nano, protože se krásně hodí na prkénko. Následující pokyny budou fungovat s Arduino Uno, protože má pro tento projekt stejná čísla pinů jako Nano. Další komponentou je infračervený přijímač. Umožňuje vám použít běžný dálkový ovladač, jako je dálkový ovladač TV, k nastavení času stejně jako na naší chytré televizi. Infračervený přijímač vyžaduje k připojení k Arduinu pouze jeden vodič.

Prvním krokem je testování Arduina a jeho zapojení na prkénko. Následující kroky, které jsou navrženy tak, aby fungovaly nezávisle. Každý krok má pokyny k zapojení a pokyny k testování. Když stavím projekty, zapojím a otestuji každou součást, abych potvrdil, že fungují. To pomáhá integrovat řadu komponent, protože vím, že každá práce a já se můžeme soustředit na integrační požadavky.

Tento Instructable vyžaduje, abyste měli nainstalované Arduino IDE. Musíte také mít základní dovednosti ke stažení programu skici Arduino z odkazů v tomto projektu, vytvoření adresáře pro program (název adresáře stejný jako název programu). Dalším krokem je načtení, zobrazení a úprava programu v IDE. Poté nahrajte program pomocí kabelu USB na desku Arduino.

Zásoby

  • Deska mikrořadiče Nano V3 ATmega328P CH340G pro Arduino. Jako alternativu můžete použít Uno.
  • Hodiny reálného času DS3231 a baterie CR2032.
  • 1602 LCD s modulem I2C
  • Infračervený přijímač a dálkové ovládání. Použil jsem soupravy modulu IR bezdrátového dálkového ovládání, které byly dodávány s infračerveným přijímačem a infračerveným dálkovým ovládáním.
  • Prkénko
  • Drátové kabely
  • 5voltový nástěnný adaptér

Díly jsem koupil na eBay, většinou od distributorů z Hongkongu nebo Číny. Američtí distributoři někdy mají stejné nebo podobné díly za rozumné ceny a rychlejší dodání. Dodání čínských dílů trvá 3 až 6 týdnů. Distributoři, které jsem použil, byli všichni spolehliví.

Přibližné náklady: Nano $ 3, DS3231 $ 1, LCD $ 3, Infračervená sada 1 $, breadboard 2 $, balíček 40 drátových kabelů 1 $, 1 $ za 5voltový nástěnný adaptér. Celkem asi 11 $. Všimněte si, koupil jsem Nano a LCD s kolíky na prkénku, které již byly připájeny na místě, protože moje pájecí schopnosti jsou špatné. K hodinové baterii jsem koupil 5 balení lithiových baterií CR2032 za zhruba 1,25 $. Také jsem si koupil 5 balení DS3231s, protože mám rád časové kousky. Tento projekt používá 1 prkénko. Koupil jsem balíček 3 prkénka asi za 7 $; výhodnější než nákup jednotlivé desky.

Krok 1: Přidejte Arduino Nano na Breadboard

Přidejte Arduino Nano na prkénko
Přidejte Arduino Nano na prkénko

Zapojte Arduino Nano do Breadboardu. Nebo pokud chcete, můžete pro tento projekt použít Arduino Uno; oba pro tento projekt používají stejné piny. Připojte Nano (nebo Uno) k počítači pomocí kabelu USB.

Připojte napájení a uzemnění z Arduina k liště napájení prkénka. Připojte pin Arduino 5+ k kladné liště prkénka. Připojte kolík Arduino GRN (uzemnění) k zápornému (uzemňovacímu) panelu prkénka. To využijí ostatní komponenty.

Stáhněte si a spusťte základní testovací program Arduino: arduinoTest.ino. Při spuštění programu se integrovaná LED kontrolka rozsvítí na 1 sekundu a poté na 1 sekundu zhasne. Také jsou zveřejněny zprávy, které lze zobrazit v nástrojích Arduino IDE Tools/Serial Monitor.

+++ Nastavení.

+ Inicializoval digitální pin LED na desce pro výstup. LED nesvítí. ++ Přejít na smyčku. + Počitadlo smyčky = 1 + Počitadlo smyčky = 2 + Počitadlo smyčky = 3…

Během cvičení změňte časovou prodlevu na blikajícím světle, nahrajte změněný program a potvrďte změnu.

Na výše uvedené fotografii je 140dílná pájecí propojovací drátěná krabička, kterou můžete získat za 3 až 5 dolarů. Dělají desky úhlednější, které používají dlouhé kabely pro krátká připojení.

Krok 2: Přidejte hodinový modul DS3231 a připojte jej k Arduinu

Přidejte modul hodin DS3231 a připojte jej k Arduinu
Přidejte modul hodin DS3231 a připojte jej k Arduinu

Zapojte modul hodin do prkénka. Připojte kolík GND hodinového modulu k zemnícímu pruhu prkénka. Připojte pin VCC hodinového modulu k kladnému pruhu lišty. Připojte pin hodinového modulu SDA (datový) ke kolíku A4 Arduina (datový pin I2C). Připojte pin hodinového modulu SCL (hodiny) ke kolíku A5 Arduino (hodinový pin I2C).

Do Arduino IDE nainstalujte knihovnu hodin DS3231. Vyberte Nástroje/Spravovat knihovny. Filtrujte své vyhledávání zadáním „rtclib“. Vyberte RTClib od Adafruit (pro odkaz, odkaz na knihovnu).

Stáhněte si a spusťte základní testovací program: clockTest.ino. Při spouštění programu se zveřejňují zprávy o čase, které lze zobrazit v nástrojích Arduino IDE Tools/Serial Monitor.

+++ Nastavení.

+ Sada hodin. ++ Přejít na smyčku. ---------------------------------------- + Aktuální datum a čas: 2020/3/ 22 (neděle) 11: 42: 3 + Aktuální datum a čas: 2020/3/22 (neděle) 11: 42: 4 + Aktuální datum a čas: 2020/3/22 (neděle) 11: 42: 5…

Při cvičení pomocí rtc.adjust () nastavte čas a datum hodin, nahrajte změněný program a potvrďte změnu.

rtc.adjust (DateTime (2020, 3, 19, 10, 59, 50)); // První jarní den 2020.

Krok 3: Přidejte modul LCD displeje 1602 a připojte jej k Arduinu

Přidejte modul LCD displeje 1602 a připojte jej k Arduinu
Přidejte modul LCD displeje 1602 a připojte jej k Arduinu

Zapojte modul LCD do prkénka. Připojte kolík GND hodinového modulu k zemnícímu pruhu prkénka. Připojte pin VCC hodinového modulu k kladnému pruhu lišty. Připojte pin hodinového modulu SDA (datový) ke kolíku A4 Arduina (datový pin I2C). Připojte pin hodinového modulu SCL (hodiny) ke kolíku A5 Arduina (hodinový pin I2C).

Do Arduino IDE nainstalujte 1602 LCD knihovnu. Vyberte Nástroje/Spravovat knihovny. Filtrujte své vyhledávání zadáním „LiquidCrystal“. Vyberte LiquidCrystal I2C od Franka de Barbander (pro informaci odkaz na knihovnu).

Stáhněte si a spusťte základní testovací program: lcd1602Test.ino. Při spuštění programu se zveřejňují zprávy o čase, které lze zobrazit v nástrojích Arduino IDE Tools/Serial Monitor.

+++ Nastavení.

+ LCD připraven k použití. +++ Přejít na smyčku. + theCounter = 1 + theCounter = 2 + theCounter = 3…

Při cvičení změňte zprávy na displeji LCD, nahrajte změněný program a změnu potvrďte.

Krok 4: Přidejte infračervený přijímač a připojte jej k Arduinu

Přidejte infračervený přijímač a připojte jej k Arduinu
Přidejte infračervený přijímač a připojte jej k Arduinu

Zapojte kabel samice do zástrčky do infračerveného přijímače (dutinky). Připojte uzemňovací kolík hodinového modulu k zemnící liště nepájivého pole. Připojte napájecí kolík hodinového modulu ke kladnému pruhu lišty. Připojte výstupní pin infračerveného přijímače ke kolíku Arduino A1.

Připojte infračervený přijímač, kolíky zleva doprava:

Vlevo nejvíce (vedle X) - nano pin A1 střed - 5V vpravo - zem

A1 + - - Připojení pomocí nano pinů

| | | -Kolíky infračerveného přijímače --------- | S | | | | --- | | | | | | --- | | | ---------

Do Arduino IDE nainstalujte infračervenou knihovnu. Vyberte Nástroje/Spravovat knihovny. Filtrujte své vyhledávání zadáním „IRremote“. Vyberte IRremote by Shirriff (jako odkaz, odkaz na knihovnu).

Stáhněte si a spusťte základní testovací program: infraredReceiverTest.ino. Při spuštění programu namiřte dálkový ovladač na přijímač a stiskněte různá tlačítka, například číslo od 0 do 9. Výstupem jsou (vytištěny) sériové zprávy, které lze zobrazit v nástrojích Arduino IDE Tools/Serial Monitor.

+++ Nastavení.

+ Inicializoval infračervený přijímač. ++ Přejít na smyčku. + Klávesa OK - Přepnout + Klávesa> - další + Klávesa < - předchozí + Klávesa nahoru + Klávesa dolů + Klávesa 1: + Klávesa 2: + Klávesa 3: + Klávesa 4: + Klávesa 6: + Klávesa 7: + Klávesa 8: + Klíč 9: + Klíč 0: + Klíč * (Zpět) + Klíč # (Konec)

Při cvičení zobrazte hodnoty vytištěné pomocí dálkového ovladače k televizi. Poté můžete program upravit tak, aby používal hodnoty v příkazu přepínače funkce infraredSwitch (). Stiskněte například klávesu „0“a získejte hodnotu pro svůj dálkový ovladač, například „0xE0E08877“. Potom přidejte do příkazu switch případ jako v následujícím fragmentu kódu.

pouzdro 0xFF9867:

případ 0xE0E08877: Serial.print ("+ Klíč 0:"); Serial.println (""); přestávka;

Krok 5: Načtěte hodinový projekt Arduino Sketch Program a otestujte jej

Načtěte projekt hodin Arduino Sketch a otestujte jej
Načtěte projekt hodin Arduino Sketch a otestujte jej
Načtěte projekt hodin Arduino Sketch a otestujte jej
Načtěte projekt hodin Arduino Sketch a otestujte jej
Načtěte projekt hodin Arduino Sketch a otestujte jej
Načtěte projekt hodin Arduino Sketch a otestujte jej

Nyní, když jsou všechny součásti přidány na prkénko, zapojeny a testovány; je čas načíst hlavní hodinový program a spustit ho. Hodinový program získává čas z hodinového modulu, zobrazuje čas na LCD a umožňuje nastavit čas pomocí infračerveného dálkového ovladače.

Stáhněte a spusťte hodinový program projektu: clockLcdSet.ino.

Když se program spustí, zobrazí čas DS3231 na LCD obrazovce 1602. Zprávy lze zobrazit v nástrojích Arduino IDE Tools/Serial Monitor.

+++ Nastavení.

+ LCD sada. + syncCountWithClock, theCounterHours = 13 theCounterMinutes = 12 theCounterSeconds = 13 + Hodiny nastavené a synchronizované s programovými proměnnými. + Infračervený přijímač povolen. ++ Přejít na smyčku. + clockPulseMinute (), theCounterMinutes = 15 + clockPulseMinute (), theCounterMinutes = 16 + clockPulseMinute (), theCounterMinutes = 17…

Namiřte dálkový ovladač na přijímač a stiskněte tlačítko se šipkou doprava. Pro nastavení se zobrazí rok. Několikrát stiskněte tlačítko se šipkou doprava, abyste zjistili, že můžete nastavit rok, měsíc, den, hodinu, minutu a sekundy. Chcete -li nastavit hodnotu času, přejděte na hodnotu. Pomocí šipek nahoru a dolů nastavte zobrazovanou hodnotu. Poté pomocí tlačítka „OK“nastavte hodnotu hodin. Je nastavena vždy jedna hodnota.

Krok 6: Externí napájení

Externí napájecí zdroj
Externí napájecí zdroj

Nyní, když jsou vaše hodiny testovány a fungují, můžete je odpojit od počítače a použít nezávislé napájení. Pro jednoduchost používám 5voltový nástěnný adaptér, který lze koupit zhruba za dolar, a USB kabel, další dolar. Kabel propojuje Arduino s nástěnným adaptérem +5V. Vzhledem k tomu, že napájecí a zemnící kolíky Arduino jsou připojeny k prkénku, budou napájeny ostatní komponenty.

Kvůli své jednoduchosti a nízkým nákladům používám stejnou kombinaci k napájení dalších projektů.

Doufám, že jste byli úspěšní a užili jste si stavbu infračerveně ovládaných LCD hodin.

Doporučuje: