Satura rādītājs:

DS1307 pulkstenis ar CloudX: 4 soļi
DS1307 pulkstenis ar CloudX: 4 soļi

Video: DS1307 pulkstenis ar CloudX: 4 soļi

Video: DS1307 pulkstenis ar CloudX: 4 soļi
Video: DS1307 Real Time Clock RTC, Arduino Nano and the Recycled DVD 7 Segment LED Display 2024, Jūlijs
Anonim
DS1307 pulkstenis ar CloudX
DS1307 pulkstenis ar CloudX
DS1307 pulkstenis ar CloudX
DS1307 pulkstenis ar CloudX

Kādreiz iedomājieties, ka vēlaties izveidot savu pielāgoto pulksteni vai pulksteni. DS1307 un CloudX apvienošana var padarīt jūsu centienus bez problēmām

1. darbība. Atveriet savu CloudX IDE

Atveriet savu CloudX IDE
Atveriet savu CloudX IDE
Atveriet savu CloudX IDE
Atveriet savu CloudX IDE

Atvainojiet, es neesmu daudz runātājs, bet es zinu, kad runa ir par reālā laika pulksteņa projektiem, cloudX ir jūs aptvēris.

Vienkārši soļi

1. importēt cloudX galveno bibliotēku ar slīpsvītru tā dēļa modeli

2. importējiet DS1307 un citu nepieciešamo funkcionālo bibliotēku

3. izbaudiet un spēlējiet ar DS1307 funkcijām no savas bibliotēkas

2. darbība: KODĒT !, KODS !!, KODS !

/*

* Fails: main.c * Autors: Ogboye Godwin * * Izveidots 2018. gada 24. aprīlī, 11:02 */

#iekļaut

#iekļaut

#iekļaut

neparakstīts īss laiks [9], datums [11];

neparakstīts īss mth, Dday, yr, hr, min, sec;

getDateTime ();

loadLcd ();

resetClock ();

int kopa = 16;

int inc = 15;

int dec = 14;

uzstādīt(){

pinMode (iestatīts, INPUT);

pinMode (iekļauts, INPUT);

pinMode (dec, INPUT);

pinMode (1, INPUT);

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

Ds1307_init ();

cilpa () {

while (readPin (set) == 0) {

getDateTime ();

loadLcd ();

slaisti (500);

}

ja (readPin (set) == 1)

resetClock ();

}

}

getDateTime () {

hr = Ds1307_read (stunda); // st

laiks [0] = BCD2UpperCh (hr);

laiks [1] = BCD2LowerCh (hr);

laiks [2] = ':';

min = Ds1307_read (minūte); // min

laiks [3] = BCD2UpperCh (min);

laiks [4] = BCD2LowerCh (min);

laiks [5] = ':';

sek = Ds1307_read (otrais); // sek

laiks [6] = BCD2UpperCh (sek);

laiks [7] = BCD2LowerCh (sek);

mth = Ds1307_read (mēnesis); // mēnesis

Datums [0] = BCD2UpperCh (mth);

Mdate [1] = BCD2LowerCh (mth);

Datums [2] = ':';

Diena = Ds1307_read (datums); // diena

Mdate [3] = BCD2UpperCh (Dday);

Mdate [4] = BCD2LowerCh (Dday);

Datums [5] = ':';

gads = Ds1307_read (gads); // gads

Datums [6] = '2';

Datums [7] = '0';

Mdate [8] = BCD2UpperCh (gads);

Mdate [9] = BCD2LowerCh (gads);

}

loadLcd () {

int cx;

Lcd_cmd (skaidrs);

Lcd_writeText (1, 1, "Datums:");

// lcdWriteTextCP (Mdate);

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

Lcd_writeCP (datums [cx]);

Lcd_writeText (2, 1, "Laiks:");

// lcdWriteTextCP (laiks);

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

Lcd_writeCP (laiks [cx]);

}

resetClock () {

Ds1307_write (otrais, Binary2BCD (0)); // rakstīt 0 sekundi

Ds1307_write (minūte, Binary2BCD (12)); // rakstīt 12 minūtes

Ds1307_write (stunda, Binary2BCD (12)); // rakstīt 12 stundas

Ds1307_write (diena, Binary2BCD (3)); // rakstīt dienu otrdiena

Ds1307_write (datums, Binary2BCD (24)); // uzrakstiet datumu 24

Ds1307_write (mēnesis, Binary2BCD (4)); // rakstīt mēnesi līdz aprīlim

Ds1307_write (gads, Binary2BCD (18)); // rakstīt 18. gadu, ti, 2018. gadu

Ds1307_write (SQWE, Binary2BCD (frekvence)); // iestatiet SQWE izvadi uz 1hz

Ds1307_write (otrais, Binary2BCD (startOscilator)); // atiestatīt otro uz 0sek un sākt oscilatoru

while (readPin (set) == 1);

}

3. solis: projektēšana Proteus

Dizains Proteus
Dizains Proteus

ierakstiet proteus isis šīs prasības

1. cloudX

2. DS1307

3. 4.7k rezistors

4. poga

5. lm016 LCD

6. 32khz kristāls

un vai protams neaizmirstiet savu pozitīvo un zemi.

izveidojiet savus savienojumus kā manējos.

Ieteicams: