Forum: Mikrocontroller und Digitale Elektronik bluepill 64K/128K, Flashsize ignorieren


von hawky (Gast)


Lesenswert?

Hallo,

gemäss gewissen Threads/Foren (siehe auch Link unten), habe ich gelesen 
dass die meisten Bluepill's obwohl mit 64K angegeben, eigentlich 128K 
Flash integriert haben.

Man muss hierfür beim standard OpenOCD programmieren (ST Link?) die 
Flashsize ignorieren. Ich verwende platformIO, wo kann man dieses 
"ignorieren" Flag setzen?
Oder wo würdet ihr suchen, ansetzen? (einfach bluepill 128K Version 
anwählen funktioniert nicht)

Danke

https://mecrisp-stellaris-folkdoc.sourceforge.io/stm32f103c8t6-128kb.html

von A. B. (Gast)


Lesenswert?

hawky schrieb:
> Oder wo würdet ihr suchen, ansetzen? (einfach bluepill 128K Version
> anwählen funktioniert nicht)

In der Doku von openOCD:

"Flash Driver: stm32f1x
...

flash bank $_FLASHNAME stm32f1x 0 0 0 0 $_TARGETNAME
Note that some devices have been found that have a flash size register 
that contains an invalid value, to workaround this issue you can 
override the probed value used by the flash driver.

flash bank $_FLASHNAME stm32f1x 0 0x20000 0 0 $_TARGETNAME"

In der *.cfg-Datei also statt der 0 die 0x20000 eintragen.

von demo (Gast)


Lesenswert?

hawky schrieb:
> gemäss gewissen Threads/Foren (siehe auch Link unten), habe ich gelesen
> dass die meisten Bluepill's obwohl mit 64K angegeben, eigentlich 128K
> Flash integriert haben.

Das galt zu einer Zeit als auf den BluePill-Boards noch ein echter 
STM32F103C8 verbaut war. Aktuell sind wohl 99% der Boards mit 
"Alternativen" bestückt die auch nur 64k Flash haben.

von hawky (Gast)


Lesenswert?

Lösung gefunden:

Was able to fix this by creating a boards folder in my project, creating 
a new board json using the contents of bluepill_f103c8_128k.json and 
changing "openocd_target": "stm32f1x", to "openocd_target": 
"../board/stm32f103c8_blue_pill",. On platformio.ini change the board 
parameter to the name of the new json.

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
Noch kein Account? Hier anmelden.