基于DS1307 RTC模塊與Arduino構(gòu)建模擬時(shí)鐘項(xiàng)目
Arduino時(shí)鐘項(xiàng)目簡(jiǎn)介
嗨,極客們,歡迎回到techrononic。我們相信你們都見(jiàn)過(guò)附近的模擬時(shí)鐘,它告訴我們時(shí)間,但從這些時(shí)鐘,機(jī)器不能讀取時(shí)間。
DS1307 RTC模塊與Arduino的接口-完整指南
計(jì)時(shí)對(duì)于許多電子項(xiàng)目來(lái)說(shuō)是必不可少的,特別是那些需要事件調(diào)度、記錄數(shù)據(jù)或跟蹤實(shí)時(shí)事件的項(xiàng)目。DS1307實(shí)時(shí)時(shí)鐘(RTC)模塊是此類應(yīng)用的熱門(mén)選擇。它可以讓你的Arduino項(xiàng)目跟蹤當(dāng)前時(shí)間,即使主電源關(guān)閉,這要?dú)w功于它的機(jī)載電池備份系統(tǒng)。
什么是DS1307 RTC模塊?
DS1307是一款基于I2c的實(shí)時(shí)時(shí)鐘模塊,可保持精確的時(shí)間,包括秒、分、小時(shí)、日、日期、月和年。它有一個(gè)內(nèi)置的32.768 kHz晶體振蕩器和一個(gè)備用電池,即使在主電源斷開(kāi)時(shí)也能確保計(jì)時(shí)。這使得它成為數(shù)據(jù)記錄系統(tǒng)、鬧鐘、時(shí)鐘或任何依賴時(shí)間的設(shè)備的理想組件。
組件的要求
要將DS1307 RTC模塊與Arduino板連接,您需要:
?Arduino UNO或任何兼容板
?DS1307 RTC模塊
?面包板和跳線
?選配:16x2液晶顯示屏,帶i2c接口,顯示時(shí)間
電路連接
DS1307使用I2C通信,這意味著它只需要兩根電線與Arduino-SDA和SCL通信。關(guān)于Arduino UNO:
?連接模塊的SDA至A4
?將模塊的SCL連接到A5
?連接VCC至5V
?接地連接
請(qǐng)確保您的模塊包括CR2032電池的備用功能。
Arduino代碼概述
要對(duì)DS1307模塊進(jìn)行編程,您需要Adafruit提供的RTClib庫(kù)。該庫(kù)簡(jiǎn)化了與模塊的通信,并提供了易于使用的函數(shù)來(lái)設(shè)置和讀取當(dāng)前時(shí)間。
代碼首先初始化RTC并檢查它是否正在運(yùn)行。如果是第一次設(shè)置,可以使用rts .adjust()設(shè)置時(shí)間。之后,您可以使用rtc連續(xù)讀取當(dāng)前時(shí)間和日期。現(xiàn)在(),然后打印或顯示在LCD或串行監(jiān)視器上。
下面是一個(gè)簡(jiǎn)化的循環(huán)示例:
?DS1307 RTC的應(yīng)用
?數(shù)字時(shí)鐘
?計(jì)時(shí)器和鬧鐘
?數(shù)據(jù)記錄儀(溫度、濕度等)
?考勤或門(mén)禁控制系統(tǒng)
?自動(dòng)化項(xiàng)目
結(jié)論
將DS1307 RTC模塊與Arduino一起使用是為電子項(xiàng)目添加可靠計(jì)時(shí)的好方法。它很容易設(shè)置,只需連接幾個(gè)連接,即使在斷電期間也能繼續(xù)跟蹤時(shí)間。無(wú)論您是構(gòu)建智能報(bào)警系統(tǒng)還是數(shù)據(jù)記錄器,該模塊都提供了基本功能,以確保您的項(xiàng)目按時(shí)進(jìn)行。
本文編譯自hackster.io





