Tartalomjegyzék:

DS1307 óra CloudX -el: 4 lépés
DS1307 óra CloudX -el: 4 lépés

Videó: DS1307 óra CloudX -el: 4 lépés

Videó: DS1307 óra CloudX -el: 4 lépés
Videó: DS1307 Real Time Clock RTC, Arduino Nano and the Recycled DVD 7 Segment LED Display 2024, November
Anonim
DS1307 óra CloudX -el
DS1307 óra CloudX -el
DS1307 óra CloudX -el
DS1307 óra CloudX -el

Képzeld el, hogy saját egyedi órát vagy órát szeretnél készíteni. A DS1307 és a CloudX egyesítése problémamentessé teheti aspirációját

1. lépés: Nyissa meg a CloudX IDE -t

Nyissa meg a CloudX IDE -t
Nyissa meg a CloudX IDE -t
Nyissa meg a CloudX IDE -t
Nyissa meg a CloudX IDE -t

Sajnálom, hogy nem vagyok sokat beszélő, de tudom, hogy amikor a Real Time Clock projektekről van szó, a cloudX lefedett téged.

Egyszerű lépések

1. importálja a cloudX főkönyvtárat perjeles táblás modelljével

2. importálja a DS1307 és más szükséges funkcionális könyvtárat

3. élvezze és játsszon a DS1307 funkciókkal a könyvtárából

2. lépés: KÓD !, KÓD !!, KÓD !

/*

* Fájl: main.c * Szerző: Ogboye Godwin * * Létrehozva: 2018. április 24, 11:02 */

#befoglalni

#befoglalni

#befoglalni

aláíratlan rövid idő [9], Mdate [11];

előjel nélküli rövid mth, Dday, yr, hr, min, sec;

getDateTime ();

loadLcd ();

resetClock ();

int halmaz = 16;

int inc = 15;

int dec = 14;

beállít(){

pinMode (készlet, BEMENET);

pinMode (inc, INPUT);

pinMode (dec, INPUT);

pinMode (1, BEMENET);

Lcd_setting (2, 3, 4, 5, 6, 7);

Ds1307_init ();

hurok(){

while (readPin (set) == 0) {

getDateTime ();

loadLcd ();

delayms (500);

}

if (readPin (set) == 1)

resetClock ();

}

}

getDateTime () {

hr = Ds1307_read (óra); // óra

idő [0] = BCD2UpperCh (óra);

idő [1] = BCD2LowerCh (óra);

idő [2] = ':';

min = Ds1307_read (perc); // min

idő [3] = BCD2UpperCh (perc);

idő [4] = BCD2LowerCh (perc);

idő [5] = ':';

sec = Ds1307_read (második); // mp

idő [6] = BCD2UpperCh (mp);

idő [7] = BCD2LowerCh (mp);

mth = Ds1307_read (hónap); //hónap

Mdate [0] = BCD2UpperCh (mth);

Mdate [1] = BCD2LowerCh (mth);

Mdate [2] = ':';

Dnap = Ds1307_read (dátum); //nap

Mdate [3] = BCD2UpperCh (Dday);

Mdate [4] = BCD2LowerCh (Dday);

Dátum [5] = ':';

év = Ds1307_read (év); //év

Dátum [6] = '2';

Mdate [7] = '0';

Mdate [8] = BCD2UpperCh (év);

Mdate [9] = BCD2LowerCh (év);

}

loadLcd () {

int cx;

Lcd_cmd (tiszta);

Lcd_writeText (1, 1, "Dátum:");

// lcdWriteTextCP (Mdate);

for (cx = 0; cx <11; cx ++)

Lcd_writeCP (Mdátum [cx]);

Lcd_writeText (2, 1, "Idő:");

// lcdWriteTextCP (idő);

for (cx = 0; cx <9; cx ++)

Lcd_writeCP (idő [cx]);

}

resetClock () {

Ds1307_write (második, Bináris2BCD (0)); // írjon 0 másodpercet

Ds1307_write (perc, Bináris2BCD (12)); // írás 12 perc

Ds1307_write (óra, Bináris2BCD (12)); // írj 12 órát

Ds1307_write (nap, Bináris2BCD (3)); // írási nap kedd

Ds1307_write (dátum, Bináris2BCD (24)); // írja be a dátumot 24

Ds1307_write (hónap, Bináris2BCD (4)); // hónapról áprilisra írni

Ds1307_write (év, Bináris2BCD (18)); // 18. év írása, azaz 2018

Ds1307_write (SQWE, Binary2BCD (frekvencia)); // állítsa az SQWE kimenetet 1 Hz -re

Ds1307_write (második, Binary2BCD (startOscilator)); // állítsa vissza a másodikat 0 másodpercre, és indítsa el az oszcillátort

while (readPin (set) == 1);

}

3. lépés: Tervezés a Proteusban

Tervezés a Proteusban
Tervezés a Proteusban

típusú proteus isis ezek a követelmények

1. cloudX

2. DS1307

3. 4.7k ellenállás

4. gomb

5. lm016 LCD

6. 32khz kristály

és persze ne felejtsd el a pozitív és a talajt.

hozza létre kapcsolatait, mint az enyém.

Ajánlott: