cc2541如何在睡眠模式下开启看门狗?
时间:10-02
整理:3721RD
点击:
cc2541如何在睡眠模式下开启看门狗?
cc2541做从机,大部分时间处在PM3模式下,使用外部中断唤醒,发现有时候通过中断唤醒时程序会跑飞,所以就开启了看门狗,有一个任务任务定时喂狗。
流程是:外部中断唤醒时,触发定时喂狗任务,当cc2541与主机断开连接时就取消定时喂狗任务(为了能进入PM3),如此循环。
现在的问题是:
设定cc2541广播时间为60s,60s没有连接自动进入PM3,发现喂狗任务一直能执行,也能进入PM3,不会复位
外部中断唤醒时,虽然立刻触发刻定时喂狗任务,但通过仿真发现定时喂狗任务一直没有被执行(看门复位时间设置为1s),程序会复位。
不知问题出在哪里?
可不可以被唤醒之后马上执行喂狗的代码?不用通过任务来执行
我发现了问题之所在:
因为我在唤醒之后开启了定向广播,定向广播为GAP_ADTYPE_ADV_HDC_DIRECT_IND,即高速模式,把定向广播改为低速模式之后,喂狗任务就能执行,程序也不会复位了,所以可能是定向广播高速模式下速度太快了,导致osal不能执行喂狗任务导致的