Obsah:

Hodiny DS1307 s CloudX: 4 kroky
Hodiny DS1307 s CloudX: 4 kroky

Video: Hodiny DS1307 s CloudX: 4 kroky

Video: Hodiny DS1307 s CloudX: 4 kroky
Video: DS1307 Real Time Clock RTC, Arduino Nano and the Recycled DVD 7 Segment LED Display 2024, November
Anonim
Hodiny DS1307 s CloudX
Hodiny DS1307 s CloudX
Hodiny DS1307 s CloudX
Hodiny DS1307 s CloudX

Predstavte si, že by ste si chceli vyrobiť vlastné hodinky alebo hodiny. zlúčenie DS1307 a CloudX môže spôsobiť, že vaša aspirácia bude bezproblémová

Krok 1: Otvorte svoje CloudX IDE

Otvorte svoje CloudX IDE
Otvorte svoje CloudX IDE
Otvorte svoje CloudX IDE
Otvorte svoje CloudX IDE

Ospravedlňujeme sa, ale nie som veľký hovorca, ale viem, že pokiaľ ide o projekty s hodinami v reálnom čase, cloudX vás obsiahne.

Jednoduché kroky

1. importujte hlavnú knižnicu cloudX so svojim lomítkovým modelom

2. importujte DS1307 a ďalšiu potrebnú funkčnú knižnicu

3. užite si a hrajte sa s funkciami DS1307 z jeho knižnice

Krok 2: KÓD !, KÓD !!, KÓD !!

/*

* Súbor: main.c * Autor: Ogboye Godwin * * Vytvorené 24. apríla 2018, 11:02 */

#zahrnúť

#zahrnúť

#zahrnúť

krátky čas bez znamienka [9], Mdate [11];

bez znamienka krátka mth, Dday, yr, hr, min, sec;

getDateTime ();

loadLcd ();

resetClock ();

int set = 16;

int inc = 15;

int dec = 14;

nastaviť(){

pinMode (sada, VSTUP);

pinMode (inc, INPUT);

pinMode (dec, INPUT);

pinMode (1, VSTUP);

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

Ds1307_init ();

slučka () {

while (readPin (set) == 0) {

getDateTime ();

loadLcd ();

oneskorenia (500);

}

if (readPin (set) == 1)

resetClock ();

}

}

getDateTime () {

hr = Ds1307_read (hodina); // hod

čas [0] = BCD2UpperCh (hod);

čas [1] = BCD2LowerCh (hod);

čas [2] = ':';

min = Ds1307_read (minúta); // min

čas [3] = BCD2UpperCh (min);

čas [4] = BCD2LowerCh (min);

čas [5] = ':';

sek = Ds1307_read (druhý); // sek

čas [6] = BCD2UpperCh (s);

čas [7] = BCD2LowerCh (s);

mth = Ds1307_read (mesiac); // mesiac

Mdate [0] = BCD2UpperCh (mth);

Mdate [1] = BCD2LowerCh (mth);

Mdate [2] = ':';

Deň = Ds1307_read (dátum); // deň

Mdate [3] = BCD2UpperCh (deň);

Mdate [4] = BCD2LowerCh (deň);

Mdate [5] = ':';

yr = Ds1307_read (rok); // rok

Mdate [6] = '2';

Mdate [7] = '0';

Mdate [8] = BCD2UpperCh (rok);

Mdate [9] = BCD2LowerCh (rok);

}

loadLcd () {

int cx;

Lcd_cmd (číry);

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

// lcdWriteTextCP (Mdate);

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

Lcd_writeCP (Mdate [cx]);

Lcd_writeText (2, 1, "Čas:");

// lcdWriteTextCP (čas);

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

Lcd_writeCP (čas [cx]);

}

resetClock () {

Ds1307_write (druhý, Binary2BCD (0)); // napíšte 0 sekúnd

Ds1307_write (minúta, Binary2BCD (12)); // zápis 12 minút

Ds1307_write (hodina, Binary2BCD (12)); // napíšte 12 hod

Ds1307_write (deň, Binary2BCD (3)); // napíšte deň v utorok

Ds1307_write (dátum, Binary2BCD (24)); // napíšte dátum 24

Ds1307_write (mesiac, Binary2BCD (4)); // píšte mesiac až apríl

Ds1307_write (rok, Binary2BCD (18)); // napíšte rok 18, t.j. 2018

Ds1307_write (SQWE, Binary2BCD (frekvencia)); // nastavenie výstupu SQWE na 1 Hz

Ds1307_write (druhý, Binary2BCD (startOscilator)); // resetujte sekundu na 0 s a spustite oscilátor

while (readPin (sada) == 1);

}

Krok 3: Návrh v Proteuse

Dizajn v Proteuse
Dizajn v Proteuse

zadajte proteus isis tieto požiadavky

1. cloudX

2. DS1307

3. 4,7k odpor

4. tlačidlo

5. LCD lm016

6. kryštál 32 khz

a alebo samozrejme, nezabudnite na svoje pozitíva a pôdu.

vytvorte svoje spojenia ako ja.

Odporúča: