Gast
#5887780
Hallo zusammen, ich habe eine STM32-Firmware für einem STM32L4R5ZI geschrieben, die auf Flash-Bank1 läuft, und Flash-Bank2 löschen/programmieren kann. Funktioniert auf dem STM32L4R5ZI einwandfrei. Jetzt wollte ich diese Firmware auf einen STM32F429ZI portieren, krieg es aber nicht zum Laufen. Ich bekomme sowohl beim Löschen als auch beim Programmieren von Bank2 immer die Fehlerflags "PGSERR" (Programming Sequence error) und/oder "PGPERR" (Programming Parallelism error) gesetzt, und kann mir nicht erklären, warum. Beispielcode:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
- HAL_FLASH_Unlock() gibt HAL_OK zurück, FlashError = 0 - HAL_FLASHEx_Erase() gibt HAL_ERROR zurück, FlashError = 2 (PGSERR) - HAL_FLASH_Lock() gibt wieder HAL_OK zurück Habe FLASH_VOLTAGE_RANGE 1, 2 und 3 probiert, kein Unterschied. In den OptionBytes ist keine Read- oder WriteProtection gesetzt. Der STM32F429ZI ist nach meinem Verständnis immer im DualBank konfiguriert, jedenfalls kann ich in OptionBytes nichts einstellen (anders als beim STM32L4R5ZI). Weiß jemand weiter?