Hallo Leute, ich brauch mal wieder eure Hilfe. Ich arbeite zur Zeit mit einem STM32 und programmiere/debugge diesen via OpenOCD USB JTAG Adapter. Ich hatte bis gestern extrem Probleme mit zwei AD-Wandlern, welche via I2C angebunden sind (SCL, SDA low, kein ACK auf Adresse). Wenn ich meine Stromversorgung komplett abschalte messe ich nun eine Spannung von 0.7 Volt auf meiner 3.3V Versorgung. Ich vermute das das die AD-Wandler bzw. den I2C Bus ziemlich verwirrt (genau erklären kann ichs mir auch nich). Ohne JTAG Adapter geht alles wunderbar. Ich habe alle relevanten Schaltpläne von mir und vom OpenOCD Adapter im Anhang. Kann mir jemand sagen, woher diese 0.7 Volt kommen? Und optional noch was ich dagegen tun kann?
Andre R. schrieb: > Kann mir jemand sagen, woher diese 0.7 Volt kommen? Die werden aus dem JTAG-Adapter über die in den JTAG-Pins des uCs integrierten Schutzdioden geholt... > Und optional noch was ich dagegen tun kann? Den Adapter abziehen... :-/ Oder probier mal aus, in jede JTAG-Leitung einen Serienwiderstand (470 Ohm) einzubauen...
Gute JTAG-Adapter verwenden deshalb Pufferbausteine an den Push/Pull-Ausgängen, die nur bei vorhandener Targetspannung aktiv sind.
Also wenn ich mir den OpenOCD Plan ansehe, sieht das danach aus, dass die Ausgänge nicht aktiv sind ohne Boardversorgung (VTARGET).
Andre R. schrieb: > die Ausgänge nicht aktiv sind ohne Boardversorgung (VTARGET). Nur: was passiert denn, wenn die VTARGET vom Target aus weg ist, aber der uC noch 5V ausgibt? Dann passiert der vermutete Fehler schon auf dem Programmer: der uC gibt 5V aus, der Treiber U4 oder U3 hat keine Spannung --> die Schutzdioden leiten --> VTARGET erscheint wie von Geisterhand...
Aber ohne VTARGET gibt doch der FT2232 auch nix aus, da VCCIOA und VCCIOB ebenfalls aus sind (oder?).
aber ggf sind hier shutzdioden gegenüber der 5V versorgungsspannung von USB drinn, oder der ausgangstreiber ( je nach technik) erzeugt dann die 0.7V. VCCIOA wird über einen Transistor gegen GND geschaltet. VCCIOA ist nicht da. der Transistor versucht zu schalten. Frage was passiert dan an VCCIOA. Stellt sich hier dan die Basis spannung der Transistor stufe ein?
Andre R. schrieb: > Aber ohne VTARGET gibt doch der FT2232 auch nix aus, da VCCIOA und > VCCIOB ebenfalls aus sind (oder?). Im DB ist nicht beschrieben, dass die Versorgungsspannung an VCCIO einfach weggenommen werden darf. Vielmehr ist sie auf "+3.0 volt to +5.25 volt" festgelegt...
Also ich habs gerade nachgemessen: Auf den JTAG leitungen vom OpenOCD USB liegen im unverbundenen Zustand 1.6V an. Die 0.7V resultieren dann wohl aus den Schutzdioden des STM32. Sind Serienwiderstände eine zuverlässige Methode um das Problem zu lösen?
Andre R. schrieb: > Sind Serienwiderstände eine zuverlässige Methode um das Problem zu > lösen? Nein. Aber es könnte funktionieren... ;-)
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.