CC2530在协议栈中使用timer3输出PWM,导致程序“死机”

在做一个POWER_EN某器件的时候,先采用PWM输出100ms,然后关闭定时器并拉高使能引脚。器件不使用时再拉低电源使能引脚(for saving power)。

然后程序一运行就发现原本一个一直在执行的循环发送事件停掉了,伴随的闪灯也灭掉了。

->去掉PWM功能发现不会出现这个问题。好吧,看来是定时器配置的哪些地方不对,影响到整个程序了。

->然后开始一点点改配置,最后发现是因为设置了CLKCONCMD这个寄存器(.TICKSPD设置定时器标记输出)。

->那就不设置这个寄存器,可能其他地方用了,那就迁就一下,你说是啥就啥,我自个分频得了。OK,完事。

---------------------------------------

本人愚钝,只能挖到这,但是不懂为什么设置了这个寄存器会影响到协议栈运行,话说协议栈不是占用的timer2吗?若有大神知道,请指点。

你可能感兴趣的:(CC2530在协议栈中使用timer3输出PWM,导致程序“死机”)