Forum: Mikrocontroller und Digitale Elektronik STM32 ChipErase scheitert


von Holger K. (holgerkraehe)


Angehängte Dateien:

Lesenswert?

Hallo zusammen

Ich möchte meinen STM32F407ZG löschen.
Dazu wollte ich das ST-Link Utility verwenden zusammen mit einem ST-Link 
(neueste Firmware) und SWD.

Die Kommunikation scheint grundsätzlich zu funktionieren.
Die Device ID ist korrekt erkannt.

Leider meldet das Tool "Internal Command Error" sowie dass die "ReadOut 
Protection" aktiv ist.

Dies mag wohl stimmen, aber kann mann bei ReadOut Protectin nicht 
löschen?

Zudem habe ich ein hex File eines Bootloaders, welchen ich in den Chip 
laden muss. Dieser gehört an Adresse 0x00000000
Wenn ich jedoch diese eingebe beim Tool meldet es "Address out of Range"

Wie kann ich den Bootloader an 0x00000000 schreiben?


Danke schonmal und Gruss

Im Anhang ein Bild des ganzen

von Mike R. (thesealion)


Lesenswert?

Holger K. schrieb:
> Leider meldet das Tool "Internal Command Error" sowie dass die "ReadOut
> Protection" aktiv ist.
>
> Dies mag wohl stimmen, aber kann mann bei ReadOut Protectin nicht
> löschen?

Grundsätzlich schon, wobei die Frage ist, welche Readout Protection du 
gesetzt hast. Wenn du Level 2 aktiviert hast, dann war es das für den 
Chip.

Ansonsten, kannst du dir das Option Byte anzeigen lassen?

> Zudem habe ich ein hex File eines Bootloaders, welchen ich in den Chip
> laden muss. Dieser gehört an Adresse 0x00000000
> Wenn ich jedoch diese eingebe beim Tool meldet es "Address out of Range"
>
> Wie kann ich den Bootloader an 0x00000000 schreiben?

Wiso willst du den Bootloader an Adresse 0x00000000 schreiben? Der Flash 
fängt erst bei 0x0800 0000 an. Davor kann zwar Memory gemappt werden, 
aber ob das zum schreiben taugt, wage ich zu bezweifeln.

von Holger K. (holgerkraehe)


Angehängte Dateien:

Lesenswert?

Vielen Dank für deine Antwort

Bei dem Board handelt es sich um ein Steuerboard eines Chinesischen 
3D-Druckers.

Nach einem Update blieb der Prozessor hängen. Deshalb möchte ich den 
Bootloader welcher customized ist vom Hersteller, neu Laden.

Der Hersteller hat mir seinen Bootloader als HEX File zugesendet.
Er hat mir gesagt, dieser komme an adresse 0x00000000

Dies erschien mir auch etwas merkwürdig.

Im Anhang das Bild der OptionBytes.
Es kommt allerdings zu beginn wieder eine Error Meldung.

von Mike R. (thesealion)


Lesenswert?

Wenn ich mir die Connection Ausgabe in deinem ersten Bild ansehen, dann 
scheint die Firmware des ST-Link nicht die neuste zu sein.
Zumindestens bei mir zeigt er als Version V2.J24.S4 an.

Also evtl. noch einmal mit der aktuellesten Version des ST-Link Utils 
und der Programmer Firmware probieren.

von Holger K. (holgerkraehe)


Angehängte Dateien:

Lesenswert?

Mike R. schrieb:
> Zumindestens bei mir zeigt er als Version V2.J24.S4 an.

Vielen Dank für den Hinweis.
Ich habe nun geupdated.

Leider erkennt er jetzt den Chip überhaupt nicht mehr.
Im anhang zwei screenshots.

Einmal mit alter Firmware einmal mit neuer.

Interessant ist, dass er bei der alten Firmware 1.5V als Targetvoltage 
(manchmal 1.4V) erkannt hat.

Die Kondensatoren auf dem Board haben aber alle 3.3V mit ausnahmen jenem 
für die AVCC (vermutlich, ich habe kein schema)

Mit der alten Firmware konnte er nur mit 1.8MHz und 4.0MHz die DeviceID 
auslesen. mit weniger als 1.8MHz gings nicht.

Mein Kabel vom ST zum Board ist ca 30cm Lang. Kann es daran liegen?

Danke

von Holger K. (holgerkraehe)


Angehängte Dateien:

Lesenswert?

Ich habe das Kabel nun gekürzt auf etwa 10cm
Leider das selbe verhalten.

Wenn ich jedoch den Modus auf "Hot Plug" ändere, dann kann ich teilweise
verbinden und sogar einen gewissen FlashBereich für kurze Zeit auslesen 
(siehe Screenshot) dieser verschwindet aber nach ein paar sekunden 
wieder.

von Mike R. (thesealion)


Lesenswert?

Dann würde ich auf Störungen tippen. Das Problem hatte ich auch schon 
einmal und das einzige, was etwas gebracht hat, war das Verbinden der 
Reset Leitung und das als Modus "under Reset" auszuwählen.

Keine Ahnung warum die Verbindung teilweise so empfindlich ist.

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.