Мазмұны:

CloudX бар DS1307 сағаты: 4 қадам
CloudX бар DS1307 сағаты: 4 қадам

Бейне: CloudX бар DS1307 сағаты: 4 қадам

Бейне: CloudX бар DS1307 сағаты: 4 қадам
Бейне: [HD] Eldon Cloud x Bar 9 - Outer Space (Midnight Dubstep remix) [music video] 2024, Шілде
Anonim
CloudX бар DS1307 сағаты
CloudX бар DS1307 сағаты
CloudX бар DS1307 сағаты
CloudX бар DS1307 сағаты

Сіз өзіңіздің жеке сағатыңызды немесе сағатты жасағыңыз келетінін ойлап көріңіз. DS1307 мен CloudX біріктіру сіздің ұмтылысты қиындықсыз жасай алады

1 -қадам: CloudX IDE ашыңыз

CloudX IDE ашыңыз
CloudX IDE ашыңыз
CloudX IDE ашыңыз
CloudX IDE ашыңыз

Кешіріңіз, мен көп сөйлемейтін адаммын, бірақ мен нақты уақыттағы сағат жобаларына келетін болсам, cloudX сізді қамтығанын білемін.

Қарапайым қадамдар

1. cloudX негізгі кітапханасын тақтай үлгісімен қиғаш етіп импорттаңыз

2. DS1307 және басқа функционалды кітапхананы импорттаңыз

3. оның кітапханасындағы DS1307 функцияларынан ләззат алыңыз және ойнаңыз

2 -қадам: КОД !, КОД !!, КОД !

/*

* Файл: main.c * Автор: Огбойе Годвин * * Жасалған күні: 24.04.2018, сағат 11:02 */

#қосу

#қосу

#қосу

қол қойылмаған қысқа уақыт [9], Mdate [11];

белгісіз қысқа mth, Dday, yr, hr, min, sec;

getDateTime ();

loadLcd ();

resetClock ();

int жиынтығы = 16;

int inc = 15;

int dec = 14;

орнату(){

pinMode (орнату, INPUT);

pinMode (incp, INPUT);

pinMode (дек, INPUT);

pinMode (1, INPUT);

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

Ds1307_init ();

цикл () {

while (readPin (орнатылған) == 0) {

getDateTime ();

loadLcd ();

кідірістер (500);

}

if (readPin (орнатылған) == 1)

resetClock ();

}

}

getDateTime () {

сағ = Ds1307_оқу (сағат); // сағ

уақыт [0] = BCD2UpperCh (сағ);

уақыт [1] = BCD2LowerCh (сағ);

уақыт [2] = ':';

мин = Ds1307_оқу (минут); // мин

уақыт [3] = BCD2UpperCh (мин);

уақыт [4] = BCD2LowerCh (мин);

уақыт [5] = ':';

сек = Ds1307_ оқу (екінші); // сек

уақыт [6] = BCD2UpperCh (сек);

уақыт [7] = BCD2LowerCh (сек);

mth = Ds1307_read (ай); // ай

Mdate [0] = BCD2UpperCh (mth);

Mdate [1] = BCD2LowerCh (mth);

Mdate [2] = ':';

Dday = Ds1307_read (күн); // күн

Mdate [3] = BCD2UpperCh (Dday);

Mdate [4] = BCD2LowerCh (Dday);

Mdate [5] = ':';

yr = Ds1307_ оқу (жыл); // жыл

Mdate [6] = '2';

Mdate [7] = '0';

Mdate [8] = BCD2UpperCh (жыл);

Mdate [9] = BCD2LowerCh (жыл);

}

loadLcd () {

int cx;

Lcd_cmd (таза);

Lcd_writeText (1, 1, «Күні:»);

// lcdWriteTextCP (Mdate);

үшін (cx = 0; cx <11; cx ++)

Lcd_writeCP (Mdate [cx]);

Lcd_writeText (2, 1, «Уақыт:»);

// lcdWriteTextCP (уақыт);

үшін (cx = 0; cx <9; cx ++)

Lcd_writeCP (уақыт [cx]);

}

resetClock () {

Ds1307_write (екінші, Binary2BCD (0)); // 0 секунд жазыңыз

Ds1307_write (минут, Binary2BCD (12)); // жазу 12 минут

Ds1307_write (сағат, Binary2BCD (12)); // 12 сағат жазыңыз

Ds1307_write (күн, Binary2BCD (3)); // сәрсенбі күні жазыңыз

Ds1307_write (күн, Binary2BCD (24)); // жазылу күні 24

Ds1307_write (ай, Binary2BCD (4)); // сәуір айына жазыңыз

Ds1307_write (жыл, Binary2BCD (18)); // 18 жылды жазыңыз, яғни 2018 ж

Ds1307_write (SQWE, Binary2BCD (жиілік)); // SQWE шығысын 1Гц -ке орнатыңыз

Ds1307_write (екінші, Binary2BCD (startOscilator)); // секундты 0 секундқа қалпына келтіріп, осциляторды іске қосыңыз

while (readPin (set) == 1);

}

3 -қадам: Proteus -та дизайн

Протеустағы дизайн
Протеустағы дизайн

Proteus is теру - бұл талаптар

1. cloudX

2. DS1307

3. 4,7 к резистор

4. түйме

5. lm016 СКД

6. 32 кГц кристалл

және, әрине, сіздің позитивті және негізді ұмытпаңыз.

байланыстарыңызды менікіндей жасаңыз.

Ұсынылған: