Hallo Forum
Habe eine LP mit AVR M16 und JTAG Stecker.
Programmiert wird mit AVR-Studio in asm und mit dem Dragon geflast.
Auf der LP ist u.a. eine PWM-Schaltung, die die ca. 40V
Betriebs-Spannung
auf regelbare 6-10 Volt erzeugt.
Nun zum Problem.
Wenn ich das Programmier-Tool ausschalte und den Debug-Modus mit dem
Dragon starte und dann auf "run" klicke, ist es noch ok.
Sobald aber ein Haltepunkt erreicht ist oder ein "break" veranlasst
wird,
kann es sein,dass der PWM-Ausgang durchgeschaltet ist.
Und das ist für den angehängten 10V-Verbraucher tödlich.
Zur Zeit ist noch eine Glühlampe dran, die auch die 40 V aushält,aber
es muss auch mit echter Hardware mal funzen und dann darf sowas nicht
mehr passieren.
Frage: kann ich innerhalb des assembler-Programms feststellen, ob JTAG
ein Braek ermöglicht, d.h. ob es im DEBUG-Modus läuft.
In diesem Fall müsste das Programm anhalten,bevor die PWM initalisiert
wird.
(Oder ich muss einen zusatzlichen Widerstand dazuschalten, dass die
(teuere)
Hardware keinen Schaden nimmt.
Wird mit dem Zusatz-Programmiertool per JTAG programmiert,gibt es keine
Break-möglichkeit und das oben beschr. kann nicht passieren
weitere Fragen:
Wer kann was zu dem "OCDR"-Register sagen
kann man mit dem "MCUCSR"
Bit 7 – JTD: JTAG Interface Disable
Bit 4 – JTRF: JTAG Reset Flag
etwas anstellen, ohne dass man sich aussperrt
und
wie kommt man an das "Device Identification Register"
scheint keine Adresse zu haben
Hatte auch das Problem mit dem hängenden Reset. Meistens gehts
gut,manchmal
aber nur mit Neustart des Studios.
Habe in die Reset-Leitung einfach ein kleiner Schalter eingebaut.
Und wenn der Dragon den Reset nicht freigibt,,Schalter aus.
hoffe, dass es verständlich genug beschrieben ist