📄 main.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 + -