Sisukord:

DS1307 reaalajas kella RTC Arduinoga: 4 sammu
DS1307 reaalajas kella RTC Arduinoga: 4 sammu

Video: DS1307 reaalajas kella RTC Arduinoga: 4 sammu

Video: DS1307 reaalajas kella RTC Arduinoga: 4 sammu
Video: LDmicro 14: ЖК-дисплей I2C и часы реального времени DS3231 (программирование лестничной схемы ПЛК микроконтроллера с помощью LDmicro) 2024, Juuni
Anonim
DS1307 reaalajas kella RTC koos Arduinoga
DS1307 reaalajas kella RTC koos Arduinoga

Selles õpetuses õpime tundma reaalajas kella (RTC) ja seda, kuidas Arduino ja reaalajas kella IC DS1307 ajaseadmena kokku pannakse.

Reaalajas kella (RTC) kasutatakse aja jälgimiseks ja kalendri pidamiseks. RTC kasutamiseks peame selle esmalt programmeerima praeguse kuupäeva ja kellaajaga. Kui see on tehtud, saab RTC registreid igal ajal lugeda, et teada saada kellaaega ja kuupäeva. DS1307 on RTC, mis töötab I2C protokolli alusel. Erinevate registrite andmeid saab lugeda, kui pääsete nende aadressidele lugemiseks I2C -side abil.

Samm: asjad, mida vajate

Asjad, mida vajate
Asjad, mida vajate
Asjad, mida vajate
Asjad, mida vajate
Asjad, mida vajate
Asjad, mida vajate

Selle juhendi jaoks on vaja järgmisi asju.

Arduino uno

Ds1307 rtc moodul

Jumper juhtmed

3.7v mündipatarei

Samm 2: Ühendused

Ühendused
Ühendused
Ühendused
Ühendused

Palun järgige pildilõigus lisatud skemaatikat ja ühendage kõik vastavalt skemaatikutele.

3. samm: kodeeriv osa

Kodeerimise osa
Kodeerimise osa

Arduino programmeerimine RTC toitmiseks praeguse kuupäeva ja kellaajaga; kuupäeva ja kellaaja lugemine RTC -st.

Siin kasutame GitHubi Watterotti raamatukogu DS1307.

Laadige see raamatukogu alla siit.:

Eemaldage raamatukogu ja lisage kaust nimega DS1307 Arduino IDE raamatukogude kausta teele.

Kui raamatukogu on Arduino IDE -sse lisatud, avage IDE ja avage lisatud DS1307 raamatukogust näitejoonis Näide.

Ettevaatust: näite visandis kasutatakse seadistusahelas funktsiooni rtc.set (). Edastage sellele funktsioonile praeguse kuupäeva ja kellaaja argumendid. Visandinäites seda väidet kommenteeritakse. Tühistage kommentaar ja laadige visand üles. Kui visand on üles laaditud, tühistage avaldus uuesti ja laadige visand üles. Kui seda ei tehta, siis iga kord, kui Arduino UNO plaat lähtestatakse või pärast väljalülitamist sisse lülitatakse, määratakse teie määratud kuupäev ja kellaaeg ikka ja jälle ning te ei saa täpset praegust kellaaega ja kuupäeva lugeda.

/* DS1307 RTC (reaalajas kella) näide

Uno A4 (SDA), A5 (SCL) Mega 20 (SDA), 21 (SCL) Leonardo 2 (SDA), 3 (SCL) */

#include "Wire.h"

#include "DS1307.h"

DS1307 rtc;

void setup () { /*init Sarjaport* / Serial.begin (9600); while (! Seeria); /*oodake jadapordi ühendamist - vajalik ainult Leonardo jaoks*/

/*init RTC*/ Serial.println ("Alg RTC …");

/*määrake kuupäev+kellaaeg ainult üks kord*/ rtc.set (0, 0, 8, 24, 12, 2014); /*08: 00: 00 24.12.2014 // sek, min, tund, päev, kuu, aasta*/

/*stop/pause RTC*/// rtc.stop ();

/*käivita RTC*/ rtc.start (); }

void loop () {uint8_t sek, min, tund, päev, kuu; uint16_t aasta;

/*saada aega RTC -st*/ rtc.get (& sec, & min, & tund, & päev, & kuu, aasta);

/*jadaväljund*/ Serial.print ("\ nAeg:"); Serial.print (tund, DEC); Serial.print (":"); Seeriaprint (min, DEC); Serial.print (":"); Serial.print (sek, DEC);

Serial.print ("\ nKuupäev:"); Serial.print (päev, DEC); Seeria.print ("."); Serial.print (kuu, DEC); Seeria.print ("."); Serial.print (aasta, DEC);

/*oodake sekund*/ viivitus (1000); }

Kopeerige ülaltoodud kood ja laadige see üles oma arduino pardal

4. samm: aja hankimine

Aja saamine
Aja saamine
Aja saamine
Aja saamine

Kui olete kõik kokku ühendanud ja koodi oma arduino -plaadile üles laadinud, avage oma arduino idees jadamonitor ja seejärel saate oma seeriamonitoris kuupäeva ja kellaaja minu jaoks näha, nagu näete, et ma näen oma aega ja aega kuupäev minu seeriamonitoris, demoväljundi saamiseks vaadake ülaltoodud pildiväljundit ja nautige oma projektile RTC kella lisamist.

Soovitan: