sky-Hawk where 发表于 2012-12-18 20:18:16

关闭看门狗程序详解

本帖最后由 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,看门狗定时器关闭。以此类推,可以得出很多书本上一带而过却又值得大家思考的简短的语句。共勉!

sky-Hawk where 发表于 2013-3-3 04:47:34

E08610225 发表于 2013-3-2 21:24 static/image/common/back.gif
恩恩~ 打破沙锅问到底~ 这种精神值得我们学习~顶一个~!

谢谢啊。哈哈

sky-Hawk where 发表于 2013-3-2 21:24:06

恩恩~ 打破沙锅问到底~ 这种精神值得我们学习~顶一个~!

sky-Hawk where 发表于 2013-1-30 08:41:01

xuyuanping1075 发表于 2013-1-12 22:27 static/image/common/back.gif
给你鱼竿是啥意思?我落伍了估计

嘻嘻,如果他直接告诉我,我不就不用想怎么弄了吗,这样他告诉我方法,现在正在努力的想学习MSP430.回复晚了,sorry

sky-Hawk where 发表于 2013-1-20 10:23:22

zhige 发表于 2013-1-19 22:10 static/image/common/back.gif
我顶

自我感觉分析的煤油问题

sky-Hawk where 发表于 2013-1-19 22:10:43

我顶:lol:lol:lol:lol

sky-Hawk where 发表于 2013-1-12 22:27:53

shengzhidao 发表于 2013-1-11 13:46 static/image/common/back.gif
强烈支持给我鱼竿的人顶顶顶

给你鱼竿是啥意思?我落伍了估计

sky-Hawk where 发表于 2013-1-11 13:46:36

强烈支持给我鱼竿的人顶顶顶

sky-Hawk where 发表于 2013-1-6 12:25:36

鬼雪雪飘 发表于 2013-1-5 12:06 static/image/common/back.gif
恩恩教训的是

翻了好多书,很多都是一笔带过。不说原因的。

sky-Hawk where 发表于 2013-1-6 12:24:15

powerdruy 发表于 2013-1-5 23:17 static/image/common/back.gif
这点我也是很久之后才明白的,当时怎么也不懂

翻了好多书,很多都是一笔带过。不说原因的。

sky-Hawk where 发表于 2013-1-5 12:06:38

xuyuanping1075 发表于 2013-1-5 11:52 static/image/common/back.gif
简单的东西,也要认真的读读啊

恩恩教训的是
页: [1] 2 3
查看完整版本: 关闭看门狗程序详解

Baidu
map