STC系列单片机看门狗.pdf

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
STC系列单片机看门狗

单片机的看门狗 - S51及STC89系列 为什么要看门狗?  你家的看门狗是做什么的?  “看门狗定时器”是这样一种东西,从功能上 说它可以让微控制器在意外状况下(比如软件 陷入死循环或跑飞)重新回复到系统上电状态, 以保证系统出问题的时候重启一次。  就跟我们现在用电脑一样,死机了你就按一下 reset键重启一次电脑,看门狗就是负责干这个 事儿的。它是52单片机增加的一个功能,以前 Intel 8031、……、AT 89C51时代单片机片内 都没有“看门狗”功能,需要我们外扩看门狗 芯片,比如X5045 。  “看门狗”就是一个计数器,由于位数有限计 数器能够装的数值是有限的( 比如8位的最多装 256个数、16位的最多装65536个数),从开 启“看门狗”那刻起,它就开始不停的数机器 周期,数一个机器周期就计数器加1,加到计 数器盛不下了(术语叫溢出)就就产生一个复 位信号,重启系统。 注解:  这里顺便说一下,一般教材上叫“看门狗定时 器”,其实定时器原理还是计数器,只是计的 是时钟周期,所以我为了初学者好理解叫统一 叫“计数器”,这里阐明一下。 看门狗的看门原理  我们在设计程序时,先根据看门狗计数器的位 数和系统的时钟周期算一下计满数需要的时间, 就是说在这个时间内“看门狗”计数器是不会 装满的,然后在这个时间内告诉它重新开始计 数,就是把计数器清零,这个过程叫“喂狗”,  这样隔一段时间喂一次狗,只要程序正常运行 他就永远计不满,一旦出现死循环之类的故障, 没有及时来清零计数器,就会导致装满了溢出, 他就重启系统,这就是  举个例子说:8051 单片机选用12MHz晶振, 一个时钟周期为1us,如果“看门狗计数器” 是16位的,最大计数65536个,那么从0开始 计到65535需要约65ms,所以我们可以在程序 的50ms左右清零一次计数器(“喂狗”), 让他重新从0开始计,再过50ms,再清,……, 这样下去只要程序正常运行,计数器永远不会 计满,也就永远不会被“看门狗”复位。  当然这个喂狗的时间是大家自己选的,只要不 超过65ms,你选多少都可以,一般不要喂得 太勤,这样单片机运行时间浪费了,比如你 1ms喂一次就太勤了,也不要说那我65ms喂一 次,这样太边缘,这样抗干扰能力就下降了, 最好是留一定的余量,这个就是设计者自己掌 握了,我一般是让计到90%左右就清一次。  每种单片机的“看门狗”实现方法不尽相同, 但是原理都一样,而且 “看门狗”都是启动了 之后就不能被关闭,只能系统复位(重新断电 在上电)才能关闭。 设置 看门狗 的一般步骤如 下:  1. 设置“看门狗”相关寄存器,启动 “看门狗”; 2. 隔一段时间清零一次,“喂狗”; 3. 如果程序正常,一直运行;如果程序出 错,没有按时“喂狗”,“看门狗”就在溢出 的时候复位系统。 S51的看门狗  AT89S52单片机看门狗定时器是14位的,最大 计数214=16384个数,每计16384个时钟周期 就溢出一次。也就是说如果使用12M晶振的话, 至少应该在16.384ms内喂一次狗。 STC89  STC89C5X系列单片机由于采用了“预分频技 术”,它的溢出时间是=(N*Prescale*32768)/ 晶振频率  (不要问我为什么,他们就是这么设计的,我 们就这么用就行)。  其中N是单片机的时钟周期,STC89C5X系列单 片机提供6时钟周期和12时钟周期两种时钟周 期,可以在烧写程序时修改;  Prescale是预分频数,通过设置 【看门狗控制 寄存器】可以设置为2、4、8、16、32、64、 128、256;怎么设置演示程序中有介绍;  晶振频率就是系统选用的晶振。  所以如果同样选择12MHz晶振,使用传统的12 时钟周期,它最小的溢出时间是 (12*2*32768)/(12*106)=65.536ms ,最大 溢出

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档