#includeunsigned int step=5; interrupt [2] void exint0(void) { if( OCR0 < 0xff - step ) OCR0 += step; } interrupt [3] void exint1(void) { if( OCR0 > step ) OCR0 -=step; } void main(void) { DDRB.4 = 1; // PORTB bit 4를 출력으로 SREG |= 0x80; //인터럽트 전체 허용 EIMSK |= 0b00000011; // INT0, 1 개별 허용 EICRA |= 0x0f; // INT0, 1 상승에지 트리거 TCCR0 |= 6; // 분주비를 256로 설정 TCCR0 |= 0b01001000; // 타이머0 FAST PWM 모드로 설정 TCCR0 |= 0x20; // 출력비교모드 설정 OCR0 = 0x7F; for(;;); }
'프로테우스 > 타이머 / 카운터' 카테고리의 다른 글
500msec 간격이로 LED 이동 (0) | 2011.10.04 |
---|---|
타이머 LED 점멸 2번째 (0) | 2011.10.04 |
타이머를 이용한 LED (0) | 2011.10.04 |