打印

看门狗程序流程

[复制链接]
1631|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 tianli1980 于 2012-4-1 00:21 编辑

看门狗运行过程如图所示,看门狗的原理是在规定的时间送出喂狗信号,没有喂狗信号,则硬件看门狗将发出复位信号,单片机开始复位。

C 语言程序及讲解
#define <reg52.h>
sfr WDTRST = 0xA6;
#define uchar unsigned char
Main()
   {
    WDTRST=0x1E;
    WDTRST=0xE1;                                   //初始化看门狗
   ;                                                //主程序中循环开始
   ;                                                //16ms不到
While (1)
    {
     WDTRST=0x1E;
     WDTRST=0xE1;                                  //喂狗指令
    }
   ;                                                //主程序结尾部分
   ;
   }

相关帖子

沙发
梅花望青竹| | 2012-4-1 10:06 | 只看该作者
看门狗中断好像有两种用法,楼主讲解的只是其中的一种吧,还是中断函数可以调用的!

使用特权

评论回复
板凳
tianyu01| | 2012-4-1 18:36 | 只看该作者
我觉得函数还是不错滴

使用特权

评论回复
地板
tianyu01| | 2012-4-1 18:36 | 只看该作者
个人观点哦

使用特权

评论回复
5
tianli1980|  楼主 | 2012-4-1 22:28 | 只看该作者
补充:汇编语言程序及讲解

AJMP MAIN

ORG  0050H
MAIN:;                                      ;初始化看门狗,启动看门狗
MOV 0A6H,#01EH ;先送1E
MOV0A6H,#0E1H ;后送E1
;                                        ;以下为主程序中循环程序
START:

ACALL WDT ;调用复位看门狗子程序        ;主程序中16ms不到,调用喂狗程序

AJMP START                             ;主程序结尾

WDT: MOV  0A6H, #01EH ;先送1E               ;喂狗子程序
MOV  0A6H, #0E1H ;后送E1
RET

使用特权

评论回复
6
拿起书本| | 2012-4-2 22:15 | 只看该作者
呵呵,看来主人是个细致的人,两种方法都发上了,:handshake

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

482

主题

2214

帖子

11

粉丝