Inhaltsverzeichnis:

DS1307-Uhr mit CloudX - Gunook
DS1307-Uhr mit CloudX - Gunook

Video: DS1307-Uhr mit CloudX - Gunook

Video: DS1307-Uhr mit CloudX - Gunook
Video: Arduino Projekt: Echtzeituhr DS1307 am Arduino 2024, Juli
Anonim
DS1307 Uhr mit CloudX
DS1307 Uhr mit CloudX
DS1307 Uhr mit CloudX
DS1307 Uhr mit CloudX

Stellen Sie sich vor, Sie möchten Ihre eigene individuelle Uhr oder Uhr herstellen. Die Zusammenführung von DS1307 und CloudX kann Ihre Aspiration problemlos machen

Schritt 1: Öffnen Sie Ihre CloudX-IDE

Öffnen Sie Ihre CloudX-IDE
Öffnen Sie Ihre CloudX-IDE
Öffnen Sie Ihre CloudX-IDE
Öffnen Sie Ihre CloudX-IDE

Tut mir leid, ich bin kein großer Redner, aber ich weiß, wenn es um Real Time Clock-Projekte geht, hat CloudX Sie abgedeckt.

Einfache Schritte

1. importieren Sie die cloudX-Hauptbibliothek mit Schrägstrich des Board-Modells

2. Importieren Sie die DS1307 und andere benötigte Funktionsbibliotheken

3. Genießen und spielen Sie mit den DS1307-Funktionen aus der Bibliothek

Schritt 2: CODE!, CODE!!, CODE!

/*

* Datei: main.c * Autor: Ogboye Godwin * * Erstellt am 24. April 2018, 11:02 Uhr */

#enthalten

#enthalten

#enthalten

unsignierte kurze Zeit[9], Mdate[11];

unsigned short mth, Dday, yr, h, min, sec;

getDateTime();

loadLcd();

resetClock();

int-Satz = 16;

int inc=15;

int dez=14;

erstellen(){

pinMode (einstellen, EINGANG);

pinMode (inc, EINGANG);

pinMode (dez, EINGANG);

pinMode (1, EINGANG);

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

Ds1307_init();

Schleife(){

while(readPin(set)==0){

getDateTime();

loadLcd();

Verzögerungen (500);

}

if(readPin(set)==1)

resetClock();

}

}

getDateTime(){

hr=Ds1307_read(Stunde); //h

time[0] = BCD2UpperCh(h);

Zeit[1] = BCD2LowerCh(h);

Zeit[2] = ':';

min=Ds1307_read(Minute); //Mindest

Zeit [3] = BCD2UpperCh(min);

Zeit[4] = BCD2LowerCh(min);

Zeit[5] = ':';

sec=Ds1307_read (Sekunde); //Sek

Zeit[6] = BCD2UpperCh(s);

Zeit[7] = BCD2LowerCh(s);

mth=Ds1307_read(Monat); //Monat

Mdate[0] = BCD2UpperCh(mth);

Mdate[1] = BCD2LowerCh(mth);

Mdate[2] = ':';

Dday=Ds1307_read(Datum); //Tag

Mdate[3] = BCD2UpperCh(Dday);

Mdate[4] = BCD2LowerCh(Dday);

Mdate[5] = ':';

yr=Ds1307_read(Jahr); //Jahr

Mdate[6] = '2';

Mdate[7] = '0';

Mdate[8] = BCD2UpperCh(yr);

Mdate[9] = BCD2LowerCh(yr);

}

loadLcd(){

int-cx;

Lcd_cmd(clear);

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

//lcdWriteTextCP(Mdate);

für(cx=0;cx<11;cx++)

Lcd_writeCP(Mdate[cx]);

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

//lcdWriteTextCP (Zeit);

für(cx=0;cx<9;cx++)

Lcd_writeCP(Zeit[cx]);

}

resetClock(){

Ds1307_write (zweite, Binary2BCD(0)); // 0 Sekunden schreiben

Ds1307_write (Minute, Binary2BCD (12)); // 12 Minuten schreiben

Ds1307_write(Stunde, Binary2BCD(12)); // 12 Stunden schreiben

Ds1307_write(Tag, Binary2BCD(3)); // Schreibtag Dienstag

Ds1307_write(Datum, Binary2BCD(24)); // Datum 24. schreiben

Ds1307_write(Monat, Binary2BCD(4)); // schreibe Monat bis April

Ds1307_write(Jahr, Binary2BCD(18)); // schreibe Jahr 18, d.h. 2018

Ds1307_write(SQWE, Binary2BCD(Frequenz)); // SQWE-Ausgang auf 1hz setzen

Ds1307_write (zweite, Binary2BCD (startOscilator)); // Sekunde auf 0sec zurücksetzen und Oszillator starten

while(readPin(set)==1);

}

Schritt 3: Design in Proteus

Design in Proteus
Design in Proteus

Geben Sie proteus isis diese Anforderungen ein

1. WolkeX

2. DS1307

3. 4.7k Widerstand

4. Taste

5. lm016 LCD

6. Kristall von 32khz

und oder vergiss natürlich nicht dein Positives und deinen Boden.

Machen Sie Ihre Verbindungen wie meine.

Empfohlen: