Hallo zusammen,
nach längerer Zeit habe ich nochmal meine 2 Evaluationboards V2.01 von
Pollin rausgekramt. Früher liefen sie ganz gut mit Windows, nur verdammt
langsam.
Jetzt hab ich mir das AVR-Plugin zu Eclipse installiert und mir
angeguckt wie ich jeweils die ATtiny2313 über avrdude beschreiben kann.
Klappt angeblich auch.
Mein Problem ist, dass ich bei einem echt kleinen und simplen Programm
schon nicht das erwünschte Ergebnis bekomme.
Unter Eclipse habe ich folgenden C-Code kompiliert:
1 | #include <avr/io.h>
|
2 |
|
3 | int main()
|
4 | {
|
5 | DDRD = 96;
|
6 | PORTD = 0;
|
7 |
|
8 | int x = 0;
|
9 |
|
10 | while(1){
|
11 | PORTD = 64; // Schaltet nur 2. Led an
|
12 | for(x = 0; x < 2500; x++);
|
13 | PORTD = 32; // Schaltet nur 1. Led an
|
14 | for(x = 0; x < 2500; x++);
|
15 | }
|
16 |
|
17 | PORTD = 0;
|
18 |
|
19 | return 0;
|
20 | }
|
Ich hoffe ihr könnt mir zustimmen das die LEDs nun abwechselnd blinken
sollten (eventuell etwas schnell, aber erhöhte Durchlauf-Zahlen ändern
nichts). Jedoch gehen beide LEDs an und verharren dann in diesem
Zustand. Das ganze geht auch einzeln mit den LEDs, aber auch da werden
sämtliche for-Schleifen und Änderungen ignoriert. Auf beiden Boards
bekomme ich das gleiche Ergebnis.
Gibt es einen offensichtlichen Fehler im Code den ich nicht sehe!?
Der Fehler verwirrt mich ziemlich weil es sich ja um ein super simples
Programm handelt und ich es nicht hinbekomme.
Ich bin über alle Anregungen und Hilfen bei der Fehlersuche dankbar :)
Vielen Dank!