问题是:第二次调用 void RTC_SetTignTime( uint32_t time ) 函数不进入RTC中断
对第二次调用进行Debug,发现问题在 R16_RTC_TRIG寄存器不更新,如下图:
程序以及运行环境:
程序是参考CH579\EVT\EXAM\BLE\RunningSensor范例工程,移植到我的RT-Thread 4.0.3操作系统里
1. 首先按照例程初始化好RTC,如下图:
不同处是改用了内部LSI时钟,并注释了和TMOS相关函数:
2. 初始化后参考HAL库SLEEP.c的u32 CH57X_LowPower( u32 time ) 函数配置RTC唤醒
主程序如下:
第一次调用rtc_timer_start()可以正常进入RTC中断,第二次则不行(R16_RTC_TRIG寄存器不更新),如有表述不清请联系我
热门产品 :
CH339: 7端口多功能USB HUB控制器芯片