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

📄 main.c

📁 单片机源代码
💻 C
字号:
/*
	T/C0中断方式测试程序 
	main.c
	MCU:AT90S2313
	时钟:4MHz
	
	芯艺 2004-09-18
*/

#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/signal.h>

#define uchar unsigned char

#define SET_LED PORTD&=0XEF //PD4接发光管
#define CLR_LED PORTD|=0X10

static uchar g_bCount=0;	//中断计数器
static uchar g_bDirection=0;

//T/C0中断例程
SIGNAL(SIG_OVERFLOW0)
{
	// 产生中断周期 T = 256 * 1024 / 4MHz 
	if(++g_bCount >14)		//中断15次约一秒
	{
		if(g_bDirection)	//反向LED控制脚
			SET_LED,g_bDirection=0;
		else
			CLR_LED,g_bDirection=1;	
			
		g_bCount=0;
	}
}

int main(void)
{
	DDRD=0X10;
	PORTD=0X10; 

	TCNT0=0; // T/C0开始值 
	TCCR0=5; // 预分频 ck/1024 ,计数允许
	
	TIMSK=_BV(TOIE0);
	sei();
	
	while(1);
}

⌨️ 快捷键说明

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