Inhoudsopgave:

DS1307 klok met CloudX - Ajarnpa
DS1307 klok met CloudX - Ajarnpa

Video: DS1307 klok met CloudX - Ajarnpa

Video: DS1307 klok met CloudX - Ajarnpa
Video: DS1307 Real Time Clock RTC, Arduino Nano and the Recycled DVD 7 Segment LED Display 2024, November
Anonim
DS1307 Klok Met CloudX
DS1307 Klok Met CloudX
DS1307 Klok Met CloudX
DS1307 Klok Met CloudX

Stel je voor dat je je eigen horloge of klok op maat wilt maken. het samenvoegen van een DS1307 en CloudX kan uw aspiratie probleemloos maken

Stap 1: Open uw CloudX IDE

Open uw CloudX IDE
Open uw CloudX IDE
Open uw CloudX IDE
Open uw CloudX IDE

Sorry, ik ben niet zo'n prater, maar ik weet dat als het gaat om Real Time Clock-projecten, cloudX je gedekt heeft.

Eenvoudige stappen

1. importeer cloudX-hoofdbibliotheek met slash zijn bordmodel

2. importeer de DS1307 en andere benodigde functionele bibliotheek

3. geniet en speel met de DS1307-functies uit de bibliotheek

Stap 2: CODE!, CODE!!, CODE!

/*

* Bestand: main.c * Auteur: Ogboye Godwin * * Gemaakt op 24 april 2018, 11:02 uur */

#erbij betrekken

#erbij betrekken

#erbij betrekken

ongetekende korte tijd[9], Mdate[11];

ongetekende korte maand, Dday, jr, hr, min, sec;

getDateTime();

laadLcd();

resetKlok();

int-set=16;

int inc=15;

int dec=14;

opstelling(){

pinMode (set, INPUT);

pinMode (incl, INPUT);

pinMode (dec, INPUT);

pinMode (1, INGANG);

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

Ds1307_init();

lus(){

while(readPin(set)==0){

getDateTime();

laadLcd();

vertragingen (500);

}

if(readPin(set)==1)

resetKlok();

}

}

getDateTime(){

hr=Ds1307_read(uur); //uur

tijd[0] = BCD2UpperCh(uur);

tijd[1] = BCD2LowerCh(hr);

tijd[2] = ':';

min=Ds1307_read(minuut); //min

tijd [3] = BCD2UpperCh(min);

tijd[4] = BCD2LowerCh(min);

tijd[5] = ':';

sec=Ds1307_read(seconde); //sec

tijd[6] = BCD2UpperCh(sec);

tijd[7] = BCD2LowerCh(sec);

mth=Ds1307_read(maand); //maand

Mdate[0] = BCD2UpperCh(mth);

Mdatum[1] = BCD2LowerCh(mth);

Mdatum[2] = ':';

Dday=Ds1307_read(datum); //dag

Mdate[3] = BCD2UpperCh(Dday);

Mdate[4] = BCD2LowerCh(Dday);

Mdatum[5] = ':';

jr=Ds1307_read(jaar); //jaar

Mdatum[6] = '2';

Mdatum[7] = '0';

Mdate[8] = BCD2UpperCh(jr);

Mdate[9] = BCD2LowerCh(jr);

}

laadLcd(){

int cx;

Lcd_cmd(wissen);

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

//lcdWriteTextCP(Mdate);

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

Lcd_writeCP(Mdate[cx]);

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

//lcdWriteTextCP(tijd);

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

Lcd_writeCP(tijd[cx]);

}

resetClock(){

Ds1307_write (tweede, Binary2BCD (0)); //schrijf 0 seconden

Ds1307_write (minuut, Binary2BCD (12));//schrijf 12 minuten

Ds1307_write (uur, Binary2BCD (12)); // schrijf 12 uur

Ds1307_write (dag, Binary2BCD (3)); //schrijf dag dinsdag

Ds1307_write(datum, Binary2BCD(24)); // schrijf datum 24e

Ds1307_write (maand, Binary2BCD (4)); // schrijf maand tot april

Ds1307_write (jaar, Binary2BCD (18)); // schrijf jaar 18, d.w.z. 2018

Ds1307_write (SQWE, Binary2BCD (frequentie)); // stel SQWE-uitvoer in op 1hz

Ds1307_write (tweede, Binary2BCD (startOsculator)); // reset seconde naar 0sec en start oscillator

while(readPin(set)==1);

}

Stap 3: Ontwerp in Proteus

Ontwerp in Proteus
Ontwerp in Proteus

typ proteus isis deze vereisten

1. cloudX

2. DS1307

3. 4.7k weerstand

4. knop

5. lm016 LCD

6. kristal van 32khz

en of natuurlijk vergeet je positieve en grond niet.

maak je connecties zoals de mijne.

Aanbevolen: