关闭看门狗程序详解
本帖最后由 xuyuanping1075 于 2012-12-19 10:50 编辑关闭看门狗程序简单,就一句话,WDTCL=WDTPW+WDTHILD,但为什么会是这样呢?众多的参考书只是简单的这么一说,并没有仔细分析。今天在教室,翻阅众多书籍,查阅.H文件,得出权威结论。详情请等待11点左右发布。
来晚了,宿舍网友问题,奶奶的,具体如下:
看门狗寄存器WDTCTL (地址0x0120)
15~876543210
WDTPWWDTHOLDWDTNMIESWDTNMIWDTTMSELWDTCNTCLWDTSSELWDTISx
WDTPW:又名口令。个人理解,就是WDTPASSW的缩写。是看门狗定时器访问时安全键值,读取时位0x69,写入时应该为0x5A.如果口令输错了,那就game over 了——复位。WDTHOLD:看门狗暂停位。 0:看门狗定时器正常工作; 1:看门狗定时器暂停。其余的与本版无关,就不介绍了,自己查书去。
关闭看门狗,地球人都知道是这句:WDTCTL=WDTPW+WDTHOLD;为什么呢?这得从IAR提供的头文件说起。以 MSP430x14x.h文件为例,里面有这么一些关于看门狗的定义(红色的是重点,只看红色可以!):
/*------------------------------------------------------------------------- *Watchdog Timer *-------------------------------------------------------------------------*/
__no_init volatile union{ unsigned short WDTCTL; /*Watchdog Timer Control */
struct{ unsigned short WDTIS0 :1; /**/ unsigned short WDTIS1 :1; /**/ unsigned short WDTSSEL :1; /**/ unsigned short WDTCNTCL :1; /**/ unsigned short WDTTMSEL :1; /**/ unsigned short WDTNMI :1; /**/ unsigned short WDTNMIES :1; /**/ unsigned short WDTHOLD :1; /**/ }WDTCTL_bit;} @ 0x0120;
enum { WDTIS0 = 0x0001, WDTIS1 = 0x0002, WDTSSEL = 0x0004, WDTCNTCL = 0x0008, WDTTMSEL = 0x0010, WDTNMI = 0x0020, WDTNMIES = 0x0040,WDTHOLD =0x0080};
#define WDTPW (0x5A00u)*******************************************************************************WDTCTL=WDTPW+WDTHOLD。由上面可以看出,WDTPW的值为0x5A00,WDTHOLD宏定义为 0x0080;进行运算后,WDTCTL为0x5A80,即高8位为5AH,写入口令;低8位10000000,看门狗定时器关闭。以此类推,可以得出很多书本上一带而过却又值得大家思考的简短的语句。共勉! E08610225 发表于 2013-3-2 21:24 static/image/common/back.gif
恩恩~ 打破沙锅问到底~ 这种精神值得我们学习~顶一个~!
谢谢啊。哈哈 恩恩~ 打破沙锅问到底~ 这种精神值得我们学习~顶一个~! xuyuanping1075 发表于 2013-1-12 22:27 static/image/common/back.gif
给你鱼竿是啥意思?我落伍了估计
嘻嘻,如果他直接告诉我,我不就不用想怎么弄了吗,这样他告诉我方法,现在正在努力的想学习MSP430.回复晚了,sorry zhige 发表于 2013-1-19 22:10 static/image/common/back.gif
我顶
自我感觉分析的煤油问题 我顶:lol:lol:lol:lol shengzhidao 发表于 2013-1-11 13:46 static/image/common/back.gif
强烈支持给我鱼竿的人顶顶顶
给你鱼竿是啥意思?我落伍了估计 强烈支持给我鱼竿的人顶顶顶 鬼雪雪飘 发表于 2013-1-5 12:06 static/image/common/back.gif
恩恩教训的是
翻了好多书,很多都是一笔带过。不说原因的。 powerdruy 发表于 2013-1-5 23:17 static/image/common/back.gif
这点我也是很久之后才明白的,当时怎么也不懂
翻了好多书,很多都是一笔带过。不说原因的。 xuyuanping1075 发表于 2013-1-5 11:52 static/image/common/back.gif
简单的东西,也要认真的读读啊
恩恩教训的是