Hallo zusammen, wir setzen den STM32F407 in unseren Produkten ein. Aktuell flashen wir diese über den UART (Boot Mode), in den Hex Files ist das SecuritY Bit schon gesetzt (Level 2 -- Read/Write Protection). Zum flashen benutzen wir das Demoprogramm "Flash Loader" von STM. Da dieses Programm manchmal aus unerfindlichen Gründen, einfach abstürzt, hat sich unser Entwickler auf die Suche nach einem neuen Programm gemacht, und ist auf den "STM32CubeProgrammer" aufmerksam geworden. Nun haben wir folgendes Problem: Das erstmalige flashen eines Prozessors funktioniert problemlos. Möchte man aber ein Firmwareupdate eines schon geflashten Prozessors machen, dann weist uns STM32CubeProgrammer daraufhin, dass das Security Bit gesetzt ist und kann deswegen den Flashspeicher nicht löschen. Mit dem "Flash Loader" funktioniert das tadellos. Erkennt das Security Bit, wenn man weitermacht wird der Flash gelöscht, anschließend kann man neu flashen. Meine Frage nun, geht das gar nicht mit dem STM32CubeProgrammer? Hinweis: Andere Programmier Methoden, sind keine Option da nur der UART nach außen geführt wurde um evtl. Firmwareupdates einzuspielen, ohne dass das Gerät geöffnet werden muss. Ich danke schon mal für eure Hilfe ...
Wenn RDP-Level 2 ist, wird das Debug-Interface komplett deaktiviert. Logisch, dass dann gar nichts damit mehr geht. Im RM ist ausführlich beschrieben, was in den verschiedenen RDP-Stufen noch möglich ist ...
Datenblatt S.93 Level 2: debug/chip read protection disabled The read protection Level 2 is activated by writing 0xCC to the RDP option byte. When the read protection Level 2 is set: – All protections provided by Level 1 are active. – Booting from RAM or system memory bootloader is no more allowed.
Sry, hab mich Security Level vertan ... Security Level 1 (OB 0xBB, Read Protection) ist Aktiv Hab den Security Level mit einem anderen µC verwechselt.
Ich hab vor kurzem die CLI Version des STM32CubeProgrammer für das Programmieren eines STM32L4 genutzt und dort wird ein Mass Erase ausgeführt sofern RDP Level1 aktiv ist.
Dankeschön ... Mit der CLI Version hat es funktioniert. Konnte den RDP Level zurücksetzen.
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.