Hallo, ich entwerfe gerade eine Platine, die den at90USB1287 enthalten soll. Jetzt ist mir aufgefallen, daß der JTAG-Port auf den A/D Wandler-Eingängen sitzt. Ich würde JTAG aber gerne benutzen gerade um den Code, der den A/D-Wandler beutzt zu untersuchen. Was kann ich tun? Vielen Dank für Eure Hilfe, Hansi
Beim MSP430 gibts für sowas "Release JTAG on Go", wenn man die shared JTAG Pins benutzt. Sicher kann man das beim JTAGICE auch irgendwo aktivieren....denn dedizierte JTAG Anschlüsse hat der Atmel ja eigentlich nie...
Wo finde ich Informationen dazu? Dem Datenblatt nach habe ich nur diese JTAG-Pins auf den a/d wandlern gefunden und keine Möglichkeit sie zu verlegen.
Naja, 4 ADC-Pins hast du ja auch mit JTAG. Wenn die dir nicht reichen, musst du dich halt entscheiden, was dir wichtiger ist. JTAG kann man auch im Betrieb abschalten (über das Bit JTD in MCUCSR), aber dann kannst du natürlich nicht mehr mit JTAG debuggen. Wenn du nur im laufenden Betrieb JTAG abschalten willst, aber trotzdem die gleiche Firmware initial noch debuggen können willst, kannst du einen kleinen Trick anwenden: um das JTAG abschalten zu können, muss man JTD zweimal hintereinander innerhalb einer gewissen Zeit beschreiben. Wenn du nun im Debugger einen Breakpoint auf das erste Schreiben des Bits legst und danach mit single-step drüber gehst, dann ist die timed sequence kaputt, und das JTAG-Interface bleibt aktiviert.
Vielen Dank, jetzt bin ich schon etwas schlauer. Dann muss ich eben mit nur 4-a/d kanälen debuggen. Das ganze klingt so als sollte ich den ISP besser auch herausführen, damit ich mich nicht evtl. durch jtag-abschalten aussperre, oder?
Hans Mayer schrieb: > damit ich mich nicht evtl. durch jtag-abschalten aussperre, oder? Solange du an der JTAGEN-Fuse nicht fummelst, sperrst du dich nicht aus. Das JTAG ICE kann im Zweifelsfall den über JTD abgeklemmten Zugang zum JTAG dadurch wiederherstellen, dass es den Controller im CPU-Reset hält (dadurch kann der Code, der JTD setzt, nicht erreicht werden) und dann die JTAG-Initialisierung vornimmt.
Mal ne Frage ich habe das selbe Problem mit dem AT90CAN128. Die JTAG ports sitzen auf den oberen 4 A/D Wandlern. Ich habe versucht JTAG im betrieb über setzen des JTD bits abzuschalten: MCUCR|=(1<<JTD); MCUCR|=(1<<JTD); Nun habe ich aber an den A/D Wandlern auf den JTAG Ports immer nen high Pegel von 5V. Den kann ichmit den A/D Wandlern auch super messen, bloß halt nichts anders. Eigentlich sollte an den Ports aber nichts anliegen sprich 0V. Ich habe gelesen das sich die Pins automatisch auf high ziehen sobald man JTD auf eins setzt also JTAG disabled. Kann man das irgendwie verhindern so das man den A/D wandler auch irgendwie benutzen kann? Oder kann man die nur benutzen wenn man die JTGEN FUSE disabled, was aber reichlich schlecht wäre da ich keine ISP Schnittstelle vorgesehen habe. Ps. Die anderen A/D Wandler funktionieren super. was mach ich da falsch? Bitte um hilfe. ich hab den entsprechenden Port auch schon nach dem Abschalten von JTAG über JTD als input definiert über DDRF=0x00; und dann mit PORTF=0x00 die Pins auf low gezogen trotzdem meß ich hier 5 Volt dran.... Hab ich da irgendwie nen denkfehler gema8 oder geht das einfach nur nicht wenn die JTAG FUSE enabled ist.
SRY har sich erledigt beitrag bitte löschen hatte mich beim register verschrieben, sowas aber auch....
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.