找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 14792|回复: 0
打印 上一主题 下一主题
收起左侧

AT89S51/51单片机看门狗的c语言程序

[复制链接]
跳转到指定楼层
楼主
ID:76686 发表于 2015-4-11 19:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
     看门狗是为了解决单片机程序运行时可能进入混乱或死循环面设置的,AT89S51/52单片机的看门狗它是由一个14bit的计数器和看门狗复位WDTRST构成,在单片机外部复位时,看门狗默认为关闭状态,有打开看门狗,必须按顺序将01EH和0E1H写入到WDTRST寄存器(SRF寄存器中,地址为0A6H),单启动了看门狗,它会随晶振在每个机器周期计数,这时除硬件复位或看门狗溢出复位外没有其它的方法关闭看门狗,当看门狗溢出,将会使单片机的复位脚RST引脚输出高电平的复位脉冲使单片机复位。


    在C语言中要增加一个声明语句。 在AT89X51.h声明文件中增加一行 sfr WDTRST = 0xA6; 在程序中加入初始化看门狗及喂狗指令,如下:
main()

{
    WDTRST=0x1E;
    WDTRST=0xE1;//初始化看门狗。
    While (1)
   {
      WDTRST=0x1E;
      WDTRST=0xE1;//喂狗指令
      }
}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表