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

📄 main.c

📁 《AVR单片机GCC程序设计》
💻 C
字号:
/*
	模拟比较器测试程序 
	main.c
	MCU:ATMega8
	
	芯艺 2004-09-16
*/

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

#define uchar unsigned char

#define SET_RED_LED PORTB&=0XFD //PB1接红色发光管
#define CLR_RED_LED PORTB|=0X02

#define SET_YEL_LED PORTB&=0XFE	//PB0接黄色发光管
#define CLR_YEL_LED PORTB|=0X01

//模拟比较器中断函数
SIGNAL(SIG_COMPARATOR)
{
	if(ACSR & _BV(ACO))
	{
		SET_YEL_LED;
		CLR_RED_LED;
	}
	else
	{
		CLR_YEL_LED;
		SET_RED_LED;
	}
}

int main(void)
{
	DDRB=0X03;
	PORTB=0X03;

	//模拟比较器上下均触发中断 ACIS1=ACIS0=0
	//中断允许 ACIE=1
	ACSR=_BV(ACIE);

	sei();
	
	//AIN0:正极 AIN1:负极  AIN0脚上的电压高于AIN1上电压时AC0=1
	if(ACSR & _BV(ACO))
	{
		SET_YEL_LED;
		CLR_RED_LED;
	}
	else
	{
		CLR_YEL_LED;
		SET_RED_LED;
	}

	while(1);
}

⌨️ 快捷键说明

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