DS1307怎么设定时间?
求大神讲一下DS1307的时间设定{:soso_e183:} 本帖最后由 Super169 于 2014-4-15 18:12 编辑我是用 Arduino 板子連接, 再用程式設定.
簡單的可以先做好一個程式, 指定了一個時間 (例如一分鐘後的時間), 在 setup() 中直接設定時間, 等待時間一到, 提早 2秒左右就按 reset(), 之後盡快刪去程式避免再執行.又或加一個鍵, 等待時間一到就按鍵設定時間.
複雜一點...就寫一個完整的時間設定, 加入幾個鍵去做. #include <Wire.h>
#include <RTClib.h>
void printDateTime(DateTime dateTime);
//创建实例
RTC_DS1307 RTC;
void setup (void){
Serial.begin(9600);
//初始化总线
Wire.begin();
//初始化实时时钟
RTC.begin();
}
void loop() {
if (Serial.available() > 0) {
int instruct = Serial.read();
switch (instruct) {
case 'D': {
//获取当前日期和时间
DateTime now = RTC.now();
//通过串口传送当前的日期和时间
printDateTime(now);
break;
} case 'S':
RTC.set(RTC_YEAR, 14);
RTC.set(RTC_MONTH, 3);
RTC.set(RTC_DAY, 5);
RTC.set(RTC_HOUR, 22);
RTC.set(RTC_MINUTE, 22);
RTC.set(RTC_SECOND, 0);
break;
}
}
}
void printDateTime(DateTime dateTime) {
//传送年份
Serial.print(dateTime.year(), DEC);
Serial.print('/');
//传送月份
Serial.print(dateTime.month(), DEC);
Serial.print('/');
//传送月份中的第几天
Serial.print(dateTime.day(), DEC);
Serial.print(' ');
//传送小时
Serial.print(dateTime.hour(), DEC);
Serial.print(':');
//传送分钟
Serial.print(dateTime.minute(), DEC);
Serial.print(':');
//传送秒
Serial.print(dateTime.second(), DEC);
Serial.println();
}
hi55234 发表于 2014-4-15 19:43 static/image/common/back.gif
#include
#include
請問<RTClib.h>在那裡下載的? hi55234 发表于 2014-4-15 19:43 static/image/common/back.gif
#include
#include
對....我也忘了可以經由串口去溝通, 直接由串口發個時間給它設定就可以了. eddiewwm 发表于 2014-4-15 21:10 static/image/common/back.gif
請問在那裡下載的?
你用的函數看來跟Adafruit的<RTClib.h>不一樣,可否給一個下載地址作參考? arduino的实例文件里就有。。 shihaipeng04 发表于 2014-4-16 10:52 static/image/common/back.gif
arduino的实例文件里就有。。
還是找不到以下這些函數:
//
} case 'S':
RTC.set(RTC_YEAR, 14);
RTC.set(RTC_MONTH, 3);
RTC.set(RTC_DAY, 5);
RTC.set(RTC_HOUR, 22);
RTC.set(RTC_MINUTE, 22);
RTC.set(RTC_SECOND, 0);
break;
//
eddiewwm 发表于 2014-4-19 11:23 static/image/common/back.gif
還是找不到以下這些函數:
//
} case 'S':
那不是函数,是实例的事件,虽然和函数用法一样。
//创建实例
RTC_DS1307 RTC;
rtc 里包含 属性和事件。 这个细说不了,你得着个书看了,面向对象的程序设计。 不一定是C的,其他语言也行,vb什么的都可以,了解了面向对象程序先。
简单点,找到<RTClib.h 还有RTClib.cpp看看里面的程序也能知道个的大概。 shihaipeng04 发表于 2014-4-19 20:24 static/image/common/back.gif
那不是函数,是实例的事件,虽然和函数用法一样。
//创建实例
明白的,但手上的 <RTClib.h 还有RTClib.cpp。裡面就是找不到這些,你手上的能運行嗎? eddiewwm 发表于 2014-4-15 21:10 static/image/common/back.gif
請問在那裡下載的?
http://www.geek-workshop.com/forum.php?mod=viewthread&tid=5929&highlight=DS1307
这个链接里有一个下载包,库文件就在里面,包括实验和你说的东西 good,感谢。
页:
[1]