Ich habe ein STM32F103ZE und darin ein Bootloader. Wenn ich mit JTAG ein Projekt flashe, dann läuft alles, dabei wird auch nicht die ReadOut Protection gesetzt. Wenn ich nun über den Bootloader ein Update mache und danach die ReadOut protection setze und ein Reset mache, dann geht das nicht mehr. Hingegen wenn ich über JTAG flashe und das Update mit Bootloader die ReadOut Protection nicht setzt, dann läuft nach einem Reset das Programm. Doch nun zum größeren Problem: Bei gesetzter ReadOut Protection kann ich nicht debuggen und nachschauen woran es liegen könnte. Habt Ihr eine Idee wie ich den Fehler finden kann?
>Wenn ich nun über den Bootloader ein Update mache und danach die ReadOut >protection setze und ein Reset mache, dann geht das nicht mehr. Das hat sich erledigt, war noch ein anderer Bug drin. Aber ein anderes Problem habe ich nun: Im Bootloader wollte ich nun die Write-Protection für den Bootloader setzen und damit kann man den Boot-Bereich nicht mehr überschreiben. Das klappt soweit auch. Nur das Problem mit Eclipse/OpenOCD/Olimex: Wenn ich jetzt in dem Zustand ein neues Projekt rein laden, dann wird ein Flash MassErase zuvor ausgeführt, aber dieser Befehl löscht nicht alles. Das ReadOnly Bit wird zwar gelöscht, der Flash ist auch komplett gelöscht aber die WriteProtect Bits sind nach wie vor gesetzt. Resultat: Der spielt mir das neue nicht mehr ein :-( Erst wenn ich mit einem ST-Link und der ST Software die WriteProtect Bits wieder lösche, dann klappt das wieder mit dem Olimex. Ich habe nur die ersten paar KB als Write-Protect gesetzt, dennoch wird beim Olimex-Flashen nichts geschrieben. Es müsste doch so sein, dass der OpenOCD beim MassErase Befehls auch die WriteProtect Bits löschen sollte?
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.