main.c

来自「avr单片机看门狗的演示程序」· C语言 代码 · 共 39 行

C
39
字号
/*******************************************
project:	watchdog test
外部8MHz
*******************************************/

#include <avr/io.h>
#include <avr/wdt.h>
#include <avr/delay.h>

#define	uchar unsigned char
#define uint  unsigned int

#define SET_LED PORTA&=0xfe;
#define CLR_LED PORTA|=0x01;

//误差不会太大的1ms delay
void DelayMs(uint ms)
{
	uint i;
	for(i=0;i<ms;i++)
		_delay_loop_2(250*4);
		
}

int main(void)
{
	DDRA=_BV(PA0);
	PORTA=_BV(PA0);			//light off
	
	wdt_enable(WDTO_1S);
	wdt_reset();
	DelayMs(500);
	
	SET_LED;
	DelayMs(5000);			//wdt会在此溢出,屏蔽看不同效果
	SET_LED;
	while(1)
		wdt_reset();
}

⌨️ 快捷键说明

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