#include#include unsigned char led = 0xfe; interrupt [2] void exint0(void) { if(led!=0x7f) led = (led << 1) | 0x01; else led = 0xfe; PORTC = led; delay_ms(40); } interrupt [3] void exint1(void) { if (led != 0xfe) led = (led >> 1 ) | 0x80; else led = 0x7f; PORTC = led; delay_ms(40); } void main(void) { DDRC = 0xff; PORTC = led; DDRD = 0x00; SREG.7 = 1; EIMSK |= 0b00000011; EICRA = 3; while(1); }
'프로테우스 > 인터럽트' 카테고리의 다른 글
인터럽트 LED 카운터 (0) | 2011.10.04 |
---|---|
인터럽트 - 상승엣지 (0) | 2011.10.04 |