⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 key-watchdog.c

📁 此代码为键盘控制看门狗的51单片机C语言程序代码
💻 C
字号:
/*******************************************************************
*                                                                 *
* 单片机开发系统演示程序 -  键控看门狗                            *
*                                                                 *
* P0和P2端口LED显示                                               *
*                                                                 *
* 版本: V1.0 (2006/11/20)                                        *
*                                                                 *
*【声明】此程序仅用于学习与参考,引用请注明版权和作者信息!       *
*                                                                 *
*******************************************************************/
/*
描述:
  在16383个机器周期内必须至少喂狗一次。
  当晶振为11.0592M时在17毫秒内需喂狗一次。
  激活看门狗后,喂狗,P2引脚上的LED闪烁发光
  激活看门狗后,如果不喂狗,则复位
  P0引脚上的LED闪烁发光
*/
/*********************************************************/
#include <reg51.h>
#include <intrins.h>

#define uchar unsigned char
#define uint  unsigned int

sfr WDTRST = 0xA6;

sbit  K1 = P1^4; 
sbit  K2 = P1^5;

/*********************************************************
   延时函数
   晶振:11.0592MHz
*********************************************************/
void delay(unsigned int m)
{
   unsigned char i=255;

   while(m--)
   {
     while(i--);
   }
}

/*********************************************************
   主函数
*********************************************************/
main()
{
   P2=0xff;
   P0=0x00;
   delay(100);
   P0=0xff;
   delay(100);

   TMOD=0x01;
   TH0=0xc6;      //定时16ms
   TL0=0x66;
   EA=1;
   ET0=1;

   WDTRST=0x1e;   //在程序初始化中激活看门狗。
   WDTRST=0xe1;   //先送1E,后送E1

   if(K1==0)
   {
     TR0=1;
   }

   while(1)
   {    
     if(K2==0)
     {
       TR0=0;
     }
	 P2=0xff;
	 P0=0xff;
	 delay(100);
	 P2=0x00;
	 delay(100);
   }
}

/*********************************************************/
void Time0(void) interrupt 1
{
   TH0=0xc6;      //定时16ms
   TL0=0x66;

   WDTRST=0x1e;   //喂狗指令
   WDTRST=0xe1;
}

/*********************************************************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -