Hallo Searcher,
bei den Fuses gibt es (gefühlt) nichts besonderes, JTAG ist aktiviert. Im davorigen Turorial mit wait-Funktionen blinkte die LED fleißig vor sich hin. Auch hier kann ich beim Initialisieren die LEDs nach Belieben an- und aus schalten. Bei dem Code oben ist die auf Bit7 erstmal aus. Würde der Interrupt auslösen, wäre sie zumindest sichtbar. Leider bleibt das aus.
Ich habe gerade auch mal (nur, um auch ganz sicher zu gehen) auch den atmega getauscht. Das hat allerdings auch nichts gebracht.
Dass der TOV0 nicht gesetzt wird, habe ich dem Debugger entnommen, bzw. der springt dann nicht in die LEDswitch-Funktion. Dass es in Hardware dann den gleichen Grund hat, warum die LED nicht an geht, das vermute ich jetzt lediglich.
Dieses Flag in Hardware zu überprüfen könnte etwas kniffelig werden, oder?
Ich hatte jetzt mal die mainloop zu folgendem abgeändert
Aber ich zweifle gerade noch daran, dass das überhaupt korrekt ist, um TCNT0 auszulesen. Nimmt r17 Grenzwerte an (10 oder 240), dann sehe ich keine Helligkeitsunterschiede der LED.Code:mainloop: in r16, TCNT0 ldi r17, 128 cp r16,r17 brcs LEDswitch clc rjmp mainloop
Hast du/habt ihr noch eine Idee, wie man das in Hardware überprüfen kann, was der so treibt?
Vielen Dank und Grüß
NRicola
Fuses:
(hfuse: 9F, lfuse: 19)Code:OCDEN JTAGEN x SPIEN x CKOPT EESAVE BOOTSZ1 BOOTSZ0 BOOTRST BODLEVEL x BODEN x SUT1 x SUT0 CKSEL3 CKSEL2 x CKSEL1 x CKSEL0
Ergänzung: In dem Tutorial (https://www.youtube.com/watch?v=-Rnt...qWof0Z&index=9) funktioniert das auch im Simulator von AVRstudio problemlos. Sehr merkwürdig, wie ich finde...![]()
Lesezeichen