工具/软件:
您好、
客户尝试修改电源测试、使用 Power_idleFunc 进入深度睡眠模式(如运动演示)、但无法从深度睡眠模式持续唤醒。
我尝试了类似的修改、发现器件已从深度睡眠模式唤醒、但在第二次唤醒后进入硬故障。 请在下面找到快照。
您可以帮助检查遗漏的内容吗?
我尝试在 Power_disablePolicy ()之前添加一个 while 循环(只是从 DEEP SLEEP 模式唤醒)、并连接 CCS 将 LOOP 的值从1更改为0、然后代码可以多次进入 DEEP SLEEP 模式。
我还尝试在默认功率测试代码中仅修复 SEL=1 (添加行121)和注释119行(无其他更改)、但也发现了硬故障。
Power_enablePolicy ()/xSemaphoreTake (gPowerSem、sleep_time_ticks)/Power_idleFunc 之间是否存在任何时序关系?
为什么调用 xSemaphoreTake (gPowerSem、sleep_time_ticks)可以进入 DEEPSLEEP 模式? 它如何调用 vPortSuppressTicksAndSleep?
为什么在运动和存在检测演示中、它会在 xSemaphoreTake (gPowerSem、portMAX_DELAY)中设置长延迟、并使用 Power_idleFunc 来进入深度睡眠模式 、但不直接使用 xSemaphoreTake (gPowerSem、SLEEP_time_ticks)?
谢谢、
Chris