By the way: Ich hab den Code mal eben (minimal abgeändert / siehe
unten)compiliert und durch den Simulator gejagt. Der Simulator sagt dass
es funktioniert (1 Sek. an... 1 Sek. aus... 1 Sek. an... usw.)
1 | /* PD2: LED blinkt
|
2 | * nst, 14.11.2005 */
|
3 | #include <inttypes.h>
|
4 | #include <avr/io.h>
|
5 | #include <avr/interrupt.h>
|
6 | //#include <avr/signal.h> <-- signal.h ist obsolet !
|
7 |
|
8 | volatile uint8_t led_an;
|
9 |
|
10 | //SIGNAL (SIG_TIMER1_OVF) <-- veraltet / ungültig !
|
11 | ISR (TIMER1_OVF_vect) // <-- neu / gültig ;)
|
12 | { led_an=~led_an;
|
13 | }
|
14 |
|
15 | void ioinit(void)
|
16 | { TCCR1A=0;
|
17 | TCCR1B=(1<<CS11) | (1<<CS10); /* full/:8/:64 MCU clock */
|
18 | TIMSK=(1<<TOIE1);
|
19 | sei(); /* enable interrupts */
|
20 | }
|
21 |
|
22 | int main (void)
|
23 | {
|
24 | ioinit();
|
25 | DDRD=0x02; /* use PortD1 for output (LED) */
|
26 | PORTD=0x00; /* turn LED off */
|
27 | for (;;)
|
28 | { PORTD=~led_an; /* LED */
|
29 | }
|
30 | }
|
Wenns bei dir nicht läuft, würde ich mal auf nen
Bedienungs-/Verdrahtungsfehler tippen.
Ähm... wo liegt das Problem eigentlich genau? Scheitert es bei dir schon
am Compilieren, oder macht der Mega8515 nach dem Programmieren einfach
nicht Anausanausanausanausanausanausanaus... ;)
...oder ganz doof gefragt: hast du die LED(s) überhaupt mit Port D
verbunden? (dazu musst du eines der beigefügten Kabel benutzen)
Gruß,
Magnetus