1 | #include <avr/io.h> |
2 | #include <avr/interrupt.h> |
3 | |
4 | #define XTAL 4e6
|
5 | #define LEDS_DDR DDRB
|
6 | #define LEDS PORTB
|
7 | |
8 | void encode_init( void ) |
9 | {
|
10 | TCCR0 = (1<<WGM01) | (1<<CS01) | (1<<CS00); // CTC, XTAL / 64 |
11 | OCR0 = (uint8_t)(XTAL / 64.0 * 1e-3 - 0.5); // 1ms |
12 | TIMSK |= 1<<OCIE0; |
13 | |
14 | |
15 | }
|
16 | |
17 | ISR( TIMER0_COMP_vect ) |
18 | {
|
19 | |
20 | LEDS = 0x00; |
21 | |
22 | }
|
23 | |
24 | int main( void ) |
25 | {
|
26 | LEDS_DDR = 0xFF; |
27 | LEDS=0xFF; |
28 | |
29 | encode_init(); |
30 | sei(); |
31 | |
32 | |
33 | while(1); |
34 | |
35 | |
36 | |
37 | }
|