相關(guān)商品





























相關(guān)文章
- 【奧松新品】首款帶車輪Arduino控制板亮相——Arduino Robot
- 【奧松新品】Arduino極客愛:全新無線Linux板–Arduino Yun
- 【奧松新品】Arduino家族新寵兒——以ARM為核心的Arduino Due
- 【奧松新品】基于Arduino、ADXL335與APC220的無線遙控器
- 【奧松新品】源自Sparkfun——MP3 Player Shield評測
- 【奧松新品】MEAS壓電式震動傳感器測評
- 【奧松新品】基于Arduino的觸摸式變色臺燈
- 【奧松新品】集成了Arduino控制器的Ethernet評測
- 【奧松新品】Pololu Zumo Arduino履帶相撲機(jī)器人測評(上)
- 【奧松新品】AS-6DOFB六自由度機(jī)械臂玩家測評
- 【奧松新品】Pololu Zumo Arduino履帶相撲機(jī)器人測評(下)
- 【新書】Raspberry Pi快速入門指南姊妹圖書Python編程入門
- 【奧松新品】Zumo Robot Kit for Arduino零部件實測
- 【奧松新品】Simulator for Arduino 模擬器使用評測
- 【新書】《Arduino機(jī)器人制作指南》助你圓夢
- 【新書】《Arduino機(jī)器人權(quán)威指南》于欣龍譯著重磅發(fā)行
- 【新書】《愛上機(jī)器人:學(xué)Arduino玩轉(zhuǎn)機(jī)器人制作》
- 【奧松新品】源自Sparkfun——SOUND DETECTOR聲音檢測傳感器評測
- 【新書】Arduino魔法書 實現(xiàn)夢想的工具和技術(shù)
- 【奧松新品】水蒸氣傳感器,打造屬于你的“晴雨表”
- 【奧松新品】小身體,大數(shù)據(jù)——模擬聲音傳感器
- 【奧松新品】Speaker發(fā)聲模塊——打造自己的音樂盒
- 【奧松新品】條形LED模塊——制作光線強(qiáng)度指示燈
- 【奧松新品】TEMT6000光敏傳感器——感光燈制作
- 【奧松新品】可調(diào)微型直流潛水泵
- 【新書】《Arduino制作手冊》于欣龍推薦
- 【新書】《Arduino 完全實戰(zhàn)》經(jīng)典之作,奧松創(chuàng)始人于欣龍推薦!
- 【好書推薦】《Arduino從基礎(chǔ)到實踐》手把手50個案例教你玩轉(zhuǎn)Arduino
- 【新訊快遞】Arduino UNO控制器的新小伙伴 小奧與你深扒Arduino UNO背后的秘密
- 【奧松新品】四位七段數(shù)碼管——制作時鐘
- 【產(chǎn)品測評】基于 ADXL345 三軸加速度計的角度測試儀
- 【產(chǎn)品測評】LCD12864 液晶搖桿擴(kuò)展板之貪吃蛇游戲
- 【產(chǎn)品測評】Make Sensor 傳感器實戰(zhàn)攻略
- 【產(chǎn)品測評】RTC Module 制作電子時鐘
【產(chǎn)品測評】RTC Module 制作電子時鐘
編輯:neil2016-10-09 瀏覽次數(shù):1399
Arduino 可以不連接其他硬件使用時鐘和日期功能,這是使用了 Arduino 板子自帶的晶振,再配合上Arduino的Time函數(shù)庫,這可以精確到每天只有幾秒的誤差。但是這樣做有一個弊端,就是當(dāng)你斷開了Arduino的電源時,因為Arduino并沒有電池,所以無法將時間保存起來,每次執(zhí)行時,都會從程序設(shè)定的時間開始,所以為了時間的準(zhǔn)確,必須每次自行設(shè)定時間。RTC時鐘模塊可以解決這個問題, 它使用DS1307作為時鐘芯片, 時鐘頻率為32.768Khz,IIC接口設(shè)計,節(jié)約Arduino控制器引腳,只需要占用兩個控制器的數(shù)據(jù)引腳就可以控制,RTC Module可安裝一個3V CR1220紐扣電池,當(dāng)Arduino斷電后,RTC模塊還保持供電,可以繼續(xù)記錄時間,這樣就不需要每次校對時間。
接下來我們就開始制作電子時鐘
首先,準(zhǔn)備要使用到的硬件
* Carduino UNO R3 控制器 * 1個
* 傳感器擴(kuò)展板 V5.0 * 1個
* USB 數(shù)據(jù)下載線 * 1 條
* RTC Module 模塊 * 1 個
* 四位七段數(shù)碼管模塊 * 1 個
* 傳感器連接線 * 若干
如下圖所示,連接所有的硬件設(shè)備,傳感器與傳感器擴(kuò)展板V5.0連接非常方便,只需要使用杜邦線連接相應(yīng)引腳即可,傳感器擴(kuò)展板使用了防呆設(shè)計,信號S、電源正、電源負(fù),分別使用黃色、紅色、黑色排針區(qū)分開。
硬件連接無誤情況下,我們就可以給控制器上傳程序,程序如下所示,程序中會用到函數(shù)庫,是你在編譯和上傳程序之前必須要安裝的,否則會出現(xiàn)編譯出錯的情況,程序源文件及程序代碼可以從文章底部的鏈接中下載。
#include <TimerOne.h>
#include "TM1637.h"
#include <Wire.h>
#include "RTClib.h"
#define ON 1
#define OFF 0
#if defined(ARDUINO_ARCH_SAMD)
#define Serial SerialUSB
#endif
RTC_DS1307 rtc;
int8_t TimeDisp[] = {0x00,0x00,0x00,0x00};
unsigned char ClockPoint = 1;
unsigned char Update;
unsigned char minute = 0;
unsigned char hour = 12;
int stem,val;
#define CLK 5
#define DIO 4
TM1637 tm1637(CLK,DIO);
void setup()
{
tm1637.set();
tm1637.init();
Timer1.initialize(500000);
Timer1.attachInterrupt(TimingISR);
#ifndef ESP8266
while (!Serial);
#endif
Serial.begin(57600);
if (! rtc.begin()) {
Serial.println("Couldn't find RTC");
while (1);
}
if (! rtc.isrunning()) {
Serial.println("RTC is running!");
rtc.adjust(DateTime(2016, 7, 27, 11,16, 00)); // 設(shè)置初始時間和日期
}
}
void loop()
{
DateTime now = rtc.now();
if(Update == ON)
{
TimeUpdate();
tm1637.display(TimeDisp);
}
stem = now.hour();
val = now.minute();
}
void TimingISR()
{
ClockPoint = (~ClockPoint) & 0x01;
Update = ON;
}
void TimeUpdate(void)
{
if(ClockPoint)tm1637.point(POINT_ON);
else tm1637.point(POINT_OFF);
TimeDisp[0] = stem/ 10;
TimeDisp[1] = stem % 10;
TimeDisp[2] = val / 10;
TimeDisp[3] = val % 10;
}
注意:通過修改時間和日期可以設(shè)置模塊的初始狀態(tài),如果給模塊安裝上3V電池,模塊在斷電后就會繼續(xù)計時,下次再通電使用時,顯示的會是正確的系統(tǒng)時間,無需再次初始化。
程序效果
如圖所示,為程序上傳后的效果,數(shù)碼管會顯示當(dāng)前時間,圖中所示時間為11時16分

總結(jié)
雖然Arduino是有時鐘功能的,但是斷電不能保存,RTC模塊完美解決了這個問題,本實驗中,使用了4位數(shù)碼管顯示,所以不能將現(xiàn)在是多少秒,或者現(xiàn)在的日期顯示出來,我們可以換用 SPI 8位數(shù)碼管顯示模塊,再制作一個精美的外殼,就可以制作屬于自己的電子時鐘了,快來試一下吧。、
注意此程序需要使用到的庫文件,大家可以點擊此處,進(jìn)入奧松機(jī)器人官方技術(shù)論壇進(jìn)行下載。
----------------------------------------------------------------------------------------------------------------
奧松機(jī)器人官網(wǎng):www.robotbase.cn
微信號:搜索公眾號“奧松機(jī)器人”
QQ群: 271230889(討論,解惑)
微博:@奧松機(jī)器人基地
----------------------------------------------------------------------------------------------------------------
溫馨提示:予人玫瑰,手留余香;如果你喜歡這篇文章,不妨轉(zhuǎn)發(fā)推薦給你身邊的朋友!
用戶評價
暫時還沒有任何用戶評論