Daftar Isi:

DS1307 Jam Dengan CloudX: 4 Langkah
DS1307 Jam Dengan CloudX: 4 Langkah

Video: DS1307 Jam Dengan CloudX: 4 Langkah

Video: DS1307 Jam Dengan CloudX: 4 Langkah
Video: Digital Real Time Clock with DS1307 and LCD Arduino | Jam Digital Dengan RTC dan LCD 2024, November
Anonim
Jam DS1307 Dengan CloudX
Jam DS1307 Dengan CloudX
Jam DS1307 Dengan CloudX
Jam DS1307 Dengan CloudX

Pernah bayangkan Anda ingin membuat jam tangan atau jam kustom Anda sendiri. menggabungkan DS1307 dan CloudX dapat membuat aspirasi Anda bebas masalah

Langkah 1: Buka IDE CloudX Anda

Buka IDE CloudX Anda
Buka IDE CloudX Anda
Buka IDE CloudX Anda
Buka IDE CloudX Anda

Maaf saya tidak banyak bicara, tapi saya tahu ketika datang ke proyek Jam Waktu Nyata, cloudX telah membantu Anda.

Langkah sederhana

1. impor pustaka utama cloudX dengan slash model papannya

2. impor DS1307 dan perpustakaan fungsional lainnya yang diperlukan

3. nikmati dan mainkan dengan fungsi DS1307 dari perpustakaannya

Langkah 2: KODE!, KODE!!, KODE!

/*

* File: main.c * Penulis: Ogboye Godwin * * Dibuat pada 24 April 2018, 11:02 */

#termasuk

#termasuk

#termasuk

waktu singkat yang tidak ditandatangani[9], Mdate[11];

unsigned short bln, Dday, thn, hr, min, sec;

getDateTime();

bebanLcd();

resetJam();

int himpunan=16;

int inc=15;

int des=14;

mempersiapkan(){

pinMode(set, INPUT);

pinMode(termasuk, INPUT);

pinMode(des, INPUT);

pinMode(1, INPUT);

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

Ds1307_init();

lingkaran(){

while(readPin(set)==0){

getDateTime();

bebanLcd();

penundaan (500);

}

jika(readPin(set)==1)

resetJam();

}

}

getDateTime(){

jam=Ds1307_read(jam); //jam

waktu[0] = BCD2UpperCh(jam);

waktu[1] = BCD2LowerCh(jam);

waktu[2] = ':';

min=Ds1307_read(menit); //min

waktu[3] = BCD2UpperCh(min);

waktu[4] = BCD2BawahCh(min);

waktu[5] = ':';

detik=Ds1307_read(kedua); //detik

waktu[6] = BCD2UpperCh(dtk);

waktu[7] = BCD2LowerCh(dtk);

bln=Ds1307_read(bulan); //bulan

Tanggal[0] = BCD2UpperCh(bln);

Tanggal[1] = BCD2LowerCh(bln);

Tanggal[2] = ':';

Dday=Ds1307_read(tanggal); //hari

TanggalM[3] = BCD2UpperCh(Hari);

Mdate[4] = BCD2LowerCh(Hhari);

Tanggal[5] = ':';

thn=Ds1307_read(tahun); //tahun

Tanggal[6] = '2';

Tanggal[7] = '0';

Tanggal[8] = BCD2UpperCh(thn);

Tanggal[9] = BCD2LowerCh(thn);

}

bebanLcd(){

int cx;

Lcd_cmd(bersih);

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

//lcdWriteTextCP(Tanggal);

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

Lcd_writeCP(Tanggal[cx]);

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

//lcdWriteTextCP(waktu);

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

Lcd_writeCP(waktu[cx]);

}

resetJam(){

Ds1307_write(kedua, Binary2BCD(0)); //tulis 0 detik

Ds1307_write(menit, Binary2BCD(12));//menulis 12 menit

Ds1307_write(jam, Binary2BCD(12)); // tulis 12 jam

Ds1307_write(hari, Binary2BCD(3)); //tulis hari selasa

Ds1307_write(tanggal, Binary2BCD(24)); // tulis tanggal 24

Ds1307_write(bulan, Binary2BCD(4)); // tulis bulan ke april

Ds1307_write(tahun, Binary2BCD(18)); // tulis tahun 18 yaitu 2018

Ds1307_write(SQWE, Binary2BCD(frekuensi)); // setel keluaran SQWE ke 1hz

Ds1307_write(kedua, Binary2BCD(startOscilator)); // reset detik ke 0 detik dan mulai osilator

while(readPin(set)==1);

}

Langkah 3: Desain di Proteus

Desain di Proteus
Desain di Proteus

ketik proteus isis persyaratan ini

1. awanX

2. DS1307

3. Resistor 4.7k

4. tombol

5. lm016 LCD

6. kristal 32khz

dan atau tentu saja jangan lupa positif dan dasar Anda.

buat koneksi Anda seperti milik saya.

Direkomendasikan: