06.c

来自「keil c51 环境下8051单片机实用程序集」· C语言 代码 · 共 48 行

C
48
字号
/*watchdog.c
Atmel Wireless & uC 80C51RA2
Atmel Wireless & uC 80C51RD2
Atmel Wireless & uC 80C54X2
Atmel Wireless & uC 80C58X2
Atmel Wireless & uC 83/87C51RB2
Atmel Wireless & uC 83/87C51RC2
Atmel Wireless & uC 83/87C51RD2
Atmel Wireless & uC T87C5111
Atmel Wireless & uC T87C5112
Atmel Wireless & uC T89C51AC2
Atmel Wireless & uC T89C51CC01
Atmel Wireless & uC T89C51CC02
Atmel Wireless & uC T89C51IB2
Atmel Wireless & uC T89C51IC2
Atmel Wireless & uC T89C51RB2
Atmel Wireless & uC T89C51RC2
Atmel Wireless & uC T89C51RD2
*/
sfr  WDTRST  =   0xA6;			 
sfr  WDTPRG  =   0xA7;			 

//WDTRST sfr 地址为0x1E and then 0xE1,复位// 地址为0x0。
void rst_Watchdog( void )
{
	WDTPRG |= 0x07;
	WDTRST  = 0x1E;
    WDTRST  = 0xE1;
}

//main()
void main( void )
{
	int i;
	                                    // 设置看门狗时间为1个时钟循环后
	rst_Watchdog();
	     	                            //关看门狗一个时钟循环
	for( i = 0; i < 500; i++)
	{
		rst_Watchdog();
	}

	while(1)
	{
	  	                    //模拟出错
	}
}

⌨️ 快捷键说明

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