首先RTC的使用非常简单:
1、把RTC的宏定义置1,#define TCFG_RTC_ALARM_ENABLE 1
2、在board_ac632n_demo.c中的rtc_data配置晶振(32.768z或者内部LRC)
3、创建一个定时器,1秒获取一次时间
但是在使用过程中发现有错位,如图:

分秒位不懂, 反而是小时位一秒加一次,这就很神奇了。SDK版本都更新到2.40了还有这种奇怪的错误吗?
一番折腾发现只需要把sys_time结构体中的校验注销掉就能解决了:

很合理,刚好错了分秒位的两个u8, 那就是底层赋值问题了,并且这些RTC代码是从69芯片系列的SDK中直接移植的,69系列的芯片是有CRC的,原厂在移植过程中可能疏忽了导致赋值错误。不过只要是应用层能解决的问题就不是大问题。
修改后发现RTC走时正常了:

那么问题就解决了。
杰理BLE,AC632N系列方案开发,69系列,701系列,方案开发。