单片机/MCU论坛
直播中

张桂兰

7年用户 1300经验值
私信 关注

PSOC6 RTC重新配置时间无效的原因?如何解决?

!参考CE218542的例程。 做利用RCT时钟唤醒Deepsleep的功能。
void Cy_RTC_Alarm2Interrupt(void)
如果我在这个中断里面更改RTC时间。 可以实现唤醒功能。 但是如果参考例程中的方法,在此中断中设置1个标志位,在主循环里面查询到标志位后调用RCT配置函数。 就再也无法唤醒Deepsleep。




次函数参考void RtcStepAlarm(void)改写。 我希望在主循环里面重新配置RTC唤醒时间。 因为我发现在RTC中断中更改这个RTC时间,有的时候会让我的数据采集出问题,感觉有些时候这部分耗时可能会长一些,会倒是我数据采集的时候丢数据。

我是在系统唤醒后第一时间就调用了rtc重新配置的函数。 希望能够帮忙解决一下此问题。 感谢!
                                                                                                                                                                                                                                                                                                                                                                                                

回帖(1)

邱敏

2024-2-21 11:08:58
“如果我放到喂狗函数以后。 RCT就配置失败了”,有没有具体研究如何失败的?本身API调用就返回失败,还是调用是成功的,但是实际执行出现问题?
CE218542任意配置时间间隔,从DSM唤醒在你的硬件上运行有问题吗?
另外根据CE218542,如果alarm间隔为1s,不需要重新配置(组件默认间隔),如果是大于1s,每次中断产生要重新配置step,也就是到下次alarm产生的step time.
举报

更多回帖

发帖
×
20
完善资料,
赚取积分