目录
2. Arduino添加 “RTC每秒打印时间信息” Sketch code
关于PKE8720DF-C13-F10开发板 的具体介绍请参考:Arduino 配置PKE8720DF-C13-F10开发板——“Blink” 周期性点亮LED灯_zoey_O_o__的博客-优快云博客
1. RTC 简介
RTC(Real Time Clock)是一个独立的二进码十进制格式(BCD码)定时器/计数器。其中一个32位寄存器包括BCD格式表示的seconds、minutes、hours(12或24小时制),另一个32位寄存器包括二进制格式表示的days。BCD码是用4位二进制数来表示1位十进制数中的0~9这10个数码。另外可以自动将月份的天数计为28、29(闰年)、30、31天以及夏令时补偿。
只要工作电压维持在运行范围,不管在运行模式、低功耗模式还是重置情况下,RTC都不会停止。
2. Arduino添加 “RTC每秒打印时间信息” Sketch code
由于Arduino 基于board“ AMB25/AMB26 (RTL8720DF) ”没有直接可用的RTC Examples,这里我们需要自己新建一个sketch:

具体code 如下:
#include "rtc_api.h"
#include "wait_api.h"
void setup() {
// put your setup code here, to run once:
rtc_init();
rtc_write(1256729737); // Set RTC time to Wed, 28 Oct 2009 11:35:37
}
void loop() {
// put your main code here, to run repeatedly:
time_t seconds;
struct tm *timeinfo;
while(1) {
seconds = rtc_read();
timeinfo = localtime(&seconds);
DiagPrintf("Time as seconds since January 1, 1970 = %d\n", seconds);
DiagPrintf("Time as a basic string = %s", ctime(&seconds));
DiagPrintf("Time as a custom formatted string = %d-%d-%d %d:%d:%d\n",
timeinfo->tm_year+1900, timeinfo->tm_mon+1, timeinfo->tm_mday, timeinfo->tm_hour,
timeinfo->tm_min,timeinfo->tm_sec);

本文详细介绍了如何在Arduino中利用RTC模块每秒打印时间信息,包括RTC简介、代码解析(setup和loop函数)、电路连接步骤以及实验结果。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



