Isi kandungan:

DS1307 Jam Real Time RTC Dengan Arduino: 4 Langkah
DS1307 Jam Real Time RTC Dengan Arduino: 4 Langkah

Video: DS1307 Jam Real Time RTC Dengan Arduino: 4 Langkah

Video: DS1307 Jam Real Time RTC Dengan Arduino: 4 Langkah
Video: Adjust RTC DS1307 time by using NTP | Set RTC time with Internet 2024, September
Anonim
DS1307 Jam Masa Sebenar RTC Bersama Arduino
DS1307 Jam Masa Sebenar RTC Bersama Arduino

Dalam Tutorial ini, kita akan belajar mengenai Real Time Clock (RTC) dan bagaimana Arduino & Real Time Clock IC DS1307 disatukan sebagai alat masa.

Jam Masa Nyata (RTC) digunakan untuk memantau waktu dan mengekalkan kalendar. Untuk menggunakan RTC, kita perlu memprogramnya terlebih dahulu dengan tarikh dan waktu semasa. Setelah ini selesai, daftar RTC dapat dibaca setiap saat untuk mengetahui waktu dan tarikh. DS1307 adalah RTC yang berfungsi pada protokol I2C. Data dari pelbagai daftar dapat dibaca dengan mengakses alamat mereka untuk membaca menggunakan komunikasi I2C.

Langkah 1: Perkara yang Anda Perlu

Perkara yang Anda Perlu
Perkara yang Anda Perlu
Perkara yang Anda Perlu
Perkara yang Anda Perlu
Perkara yang Anda Perlu
Perkara yang Anda Perlu

Ini adalah perkara berikut yang anda perlukan untuk arahan ini:

Arduino uno

Modul Ds1307 rtc

Wayar pelompat

Sel duit syiling 3.7v

Langkah 2: Sambungan

Sambungan
Sambungan
Sambungan
Sambungan

Sila ikuti skematik yang dilampirkan di bahagian gambar dan sambungkan semuanya Menurut skmatik.

Langkah 3: Bahagian Pengekodan

Bahagian Pengekodan
Bahagian Pengekodan

Memprogram Arduino untuk memberi makan RTC dengan tarikh dan masa semasa; dan membaca tarikh dan masa dari RTC.

Di sini, kita akan menggunakan perpustakaan DS1307 oleh Watterott dari GitHub.

Muat turun perpustakaan ini dari sini.:

Ekstrak pustaka dan tambahkan folder bernama DS1307 ke jalur folder perpustakaan Arduino IDE.

Setelah perpustakaan ditambahkan ke Arduino IDE, buka IDE dan buka contoh lakaran bernama Contoh dari perpustakaan DS1307 yang ditambahkan.

Word Of Awution: Dalam lakaran contoh, dalam gelung persediaan, fungsi rtc.set () digunakan. Lulus argumen tarikh dan waktu semasa seperti yang disebutkan untuk fungsi ini. Dalam lakaran contoh, pernyataan ini akan dikomentari. Tidak memberikan komen dan muat naik lakaran. Setelah lakaran dimuat naik, tanggalkan pernyataan itu semula dan muat naik lakaran tersebut. Sekiranya ini tidak dilakukan, setiap kali papan Arduino UNO diset semula atau dihidupkan setelah dimatikan, tarikh dan masa yang anda tetapkan akan berulang-ulang kali dan anda tidak dapat membaca masa dan tarikh semasa yang tepat.

/ * Contoh DS1307 RTC (Waktu Sebenar-Jam)

Uno A4 (SDA), A5 (SCL) Mega 20 (SDA), 21 (SCL) Leonardo 2 (SDA), 3 (SCL) * /

#sertakan "Wire.h"

#sertakan "DS1307.h"

DS1307 rtc;

batal persediaan () {/ * init Serial port * / Serial.begin (9600); sementara (! bersiri); / * tunggu port bersambung - diperlukan untuk Leonardo sahaja * /

/ * init RTC * / Serial.println ("Init RTC …");

/ * hanya menetapkan tarikh + masa sekali sahaja * / rtc.set (0, 0, 8, 24, 12, 2014); / * 08: 00: 00 24.12.2014 // saat, min, jam, hari, bulan, tahun * /

/ * hentikan / jeda RTC * / // rtc.stop ();

/ * mulakan RTC * / rtc.start (); }

gelung kosong () {uint8_t saat, min, jam, hari, bulan; uint16_t tahun;

/ * dapatkan masa dari RTC * / rtc.get (& saat, & min, & jam, & hari, & bulan, & tahun);

/ * output bersiri * / Serial.print ("\ nWaktu:"); Serial.print (jam, DEC); Serial.print (":"); Cetakan bersiri (min, DEC); Serial.print (":"); Serial.print (saat, DEC);

Serial.print ("\ nTarikh:"); Serial.print (hari, DEC); Cetakan bersiri ("."); Serial.print (bulan, DEC); Cetakan bersiri ("."); Serial.print (tahun, DEC);

/ * tunggu sekejap * / kelewatan (1000); }

Salin kod di atas & muat naik ke Papan arduino anda

Langkah 4: Mendapatkan Masa

Mendapat Masa
Mendapat Masa
Mendapat Masa
Mendapat Masa

Setelah menyambungkan semuanya dan memuat naik kod ke papan arduino anda, buka monitor bersiri dalam idea arduino anda dan kemudian anda akan dapat tarikh dan masa seperti yang saya ada di monitor bersiri anda seperti yang anda lihat saya dapat melihat Masa saya & tarikh di monitor bersiri saya, untuk output demo sila rujuk output gambar di atas dan selamat menambahkan jam RTC ke projek anda.

Disyorkan: