微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > cc2538看门狗

cc2538看门狗

时间:10-02 整理:3721RD 点击:

cc2538的mesh1.0.0的协议栈,在不使用看门狗的时候,按键可以连续被触发,但是使用cc2538看门狗的时候,按键只能触发一下,我查看了一下按键处的代码,代码中使用了watchdog定时器来做的按键防抖。

请问,1、使能了WDT_IN_PM1,是否对按键有影响?

            2、请问我需要同时使用按键和看门狗,需要如何做?

谢谢!

这个协议栈没用过,不过根据你说的,我觉得如果看门狗开启的话,如果喂狗周期比较短,而你按键持续时间长,就会影响到喂狗,这样就会复位,可以在设计按键的时候不会让系统一直等待,而处理按键的程序处于标志保持状态。能正常循环主函数让系统喂狗。

感觉不像是复位,因为程序复位的话,第一,按键应该就可以在使用一次才对;第二,我的设备没有脱离网络,

建议你把协议栈里面针对按键使用看门狗的相关代码去掉,使用中断方式,并且使用传统的消抖。

VV,

传统的消抖如何做,请问有没有示例可以参考.

谢谢

您可以使用软件进行消抖,即检测出键闭合后执行一个延时程序,产生5ms~10ms的延时,让前沿抖动消失后再一次检测键的状态,如果仍保持闭合状态电平,则确认为真正有键按下。当检测到按键释放后,也要给5ms~10ms的延时,待后沿抖动消失后才能转入该键的处理程序。

Susan Yang ,

   我用的是zigbee的协议栈,使用delay();延时处理的话,会不会影响协议栈的正常运行

应该不会的

按照您的方式,可以成功,谢谢!

很高兴能帮到您!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top