sobota 13. prosince 2014

Arduino Lesson 7 - Real Time Clock

V dnešní sedmém tutoriálu se naučíme pracovat s real time clock modulem. Budeme potřebovat Arduino, display shield a real time clock modul.

Otevřete si vývojové prostředí pro Arduino a zkopírujte tento kód:


       #include <DS1307.h>
       #include <WProgram.h>
       #include <Wire.h>
       #include <LiquidCrystal.h>

       LiquidCrystal lcd(8, 9, 4, 5, 6, 7);        

       int rtc[7];

       void setup(){  
        lcd.begin(16, 2);
       }
       void loop(){
         RTC.get(rtc,true);
         char cas[9];
         sprintf(cas, "%02d:%02d:%02d", rtc[2],rtc[1],rtc[0]);
         lcd.clear();
         lcd.print(cas);
         delay(1000);
        }





Propojte podle těchto fotek.

Funkce setup() se spustí po spuštění programu, a v ní se deklaruje nastavení pinů, inicializace Ethernet Shieldu atd. a následně se zavolá funkce loop(). Funkce loop() se neustále opakuje.
#include <LiquidCrystal.h> inkluduje knihovnu LiquidCrystal. Pomocí LiquidCrystal lcd(8, 9, 4, 5, 6, 7) vybereme piny které chceme používat na LCD panelu. lcd.begin(16,2) spustí knihovnu.
Aby jsme mohli používat knihovnu DS1307, musíme ji nejprve stáhnout a poté přidat do adresáře knihoven. Stáhnete ji zde. RTC.get(rtc,true)  vloží čas z modulu do proměnné rtc. char cas[9] vytvoří pole znaků pro čas. sprintf(cas, "%02d:%02d:%02d", rtc[2],rtc[1],rtc[0]) zapíše čas z rtc do cas. lcd.clear() vyčistí display a lcd.print(cas) zobrazí čas.



GitHub: https://github.com/vaclavpavlicek/Arduino-Tutorial/tree/master/Lesson7_Real_time_clock

Žádné komentáře:

Okomentovat