#include <avr/io.h>
#include <avr/interrupt.h>
volatile int ac_result=0;
ISR(ANALOG_COMP_vect)
{ ac_result = ( ACSR & (1<<ACO) ) ? 0 : 1; }
void enable_ac(void)
{
ACSR = 1<<ACIE;
}
int main(void)
{
DDRC |=1<<PC0;
enable_ac();
sei();
while(1){
PORTC = (PORTC & ~(1<<PC0)) | (ac_result<<PC0);
}
return 0;
}
다음검색