Hallo, ich möchte bei meiner Schaltung mit STM32 die JTAG Schnittstelle deaktivieren, um Einbruchversuche in meine Software zu erschweren. Das ganze funktioniert auch, indem einfach die alternate Function genutzt wird, dann ist JTAG tot und mein Debugger (Olimex) kommuniziert nicht mehr. Derzeit habe ich noch ein Hintertürchen in der Software, und kann über eine Kommandosequenz wieder das JTAG aktivieren. Ansonsten gelingt es mir nämlich nicht, per JTAG eine neue Software zu flashen. Wie kannn ich den Prozessor löschen/programmieren, wenn JTAG deaktiviert ist? Es müsste ja möglich sein, die Reset-Leitung zu halten (damit die Software nicht ausgeführt wird, die zur Deaktivierung von JTAG führt), und währenddessen zu kommunizieren. Bisher ist es mir mit der Kombi OpenOCD / Olimex JTAG nicht gelungen. Noch bevor das erste Kommando (reset halt) in meinem OpenOCD Flash Script ausgeführt wird, kommen schon Fehlermeldungen, dass keine Kommunikation möglich ist. Dieses Problem müsste doch jeder haben, der versucht, die JTAG Pins anderweitig zu nutzen (was man üblicherweise wohl versucht zu vermeiden). Danke! Sven
Jeden STM32 hat ein bootloader, so lasst sich ueber USART1 ein neues program flashen (boot0 / boot1 pin). Daneben gibts auch noch die ST-link, braucht nur 2 pins (SWDIO und SWCLK) um Zugriff zu haben auf das flash und debug. Brauchts du ein ST-link Schnittstelle, aber schon das Discovery board VL hat eines. Ueber das ST-link utility kan dan geflasht werden.
Hey danke für die Antworten. Der verlinkte Thread beschreibt genau mein Problem, leider ist auch dort keine wirkliche Lösung... mir gelingt es nicht, über das Kommando jtag_reset x y irgendeine Art von Reset herbeizuführen. Auch wollte ich nicht auf andere Tools umsatteln. Ich suche einen Weg, mit meiner aktuellen Toolchain (und das ist OpenOCD + Olimex JTAG) den Prozessor zu löschen, ohne manuell einen Reset Taster drücken zu müssen oder auf andere Debug Schnittstellen umzusatteln... Na gut aber anscheinend bleibt mir nix anderes übrig...
Sven schrieb: > ich möchte bei meiner Schaltung mit STM32 die JTAG Schnittstelle > deaktivieren, um Einbruchversuche in meine Software zu erschweren. > Es müsste ja möglich sein, die Reset-Leitung zu halten (damit die > Software nicht ausgeführt wird, die zur Deaktivierung von JTAG führt), Wenn JTAG per Software deaktiviert wird, wo liegt da die Erschwernis? Jemand der einbrechen möchte und offensichtlich in der Lage ist mit einem JTAG Debugger zu arbeiten, wird einfach die Abschaltroutine überspringen. -- Marcus
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.