RTC - 使用 NTP 校正 DS1307/DS3231 RTC 时间
材料准备
- Ameba x 1
- DS1307/DS3231 RTC x 1
范例说明
这个范例里会使用NTP来对DS1307/DS3231 RTC模组做时间校正
我们需要这几个library:
我们需要这几个library:
DS1307RTC library:
https://github.com/ambiot/amb1_arduino/raw/master/Arduino_libraries/DS1307RTC-1.0.0.zip
https://github.com/ambiot/amb1_arduino/raw/master/Arduino_libraries/DS1307RTC-1.0.0.zip
RTL8195接线图如下:
RTL8710接线图如下:
接着打开范例 “File” -> “Examples” -> “AmebaDS1307RTC” -> “SetTimeNtp”
修改Wifi连线需要的ssid与password,编译并上传至Ameba,完成之后按下Reset按钮。接着可以在Serial Monitor看到底下的log, 代表已从NTP校正完成。
程式码说明
在Wifi连线上之后,我们使用NTP对Time library做时间校正
setSyncProvider(getNtpTime);
接着使用Time library得到的时间设定tmElements_t变数的值,然后传进RTC.write()里面
RTC.write(tm);
接着在loop()里面每秒读出RTC的时间
Copyrights ©瑞晟微电子(苏州)有限公司 2021. All rights reserved. 使用条款