STM32F405 nicht mehr programmierbar

OP #3647273
Lesenswert?

Hallo,

wie im Titel schon beschrieben, lässt sich mein STM32F405 nach 
einmaligem Programmieren nicht erneut flashen.
Dazu ist zu sagen, dass ich heute eine neue Platine bekommen habe und 
dafür ein bestehendes Programm, welches mit der alten Platinenversion 
und auf dem gleichen µC funktionert, aufgespielt habe. Es wurden nur 
Veränderungen in der Pinkonfiguration vorgenommen.

Wie gesagt, konnte ich das Programm das erste Mal ohne Probleme flashen 
und jetzt bekomme ich über die SWD Pins keine Kommunikation zwischen µC 
und PC auf die Reihe.

Ich programmiere mit der Coocox IDE und habe auch schon probiert mit 
ST-LINK Utility auf den µC zuzugreifen, jedoch ohne Erfolg.

Meine Frage daher, kann es sein, dass durch die Softwareänderung der µC 
alle Dienste verweigert oder ist es eher ein Hardwareproblem.
#3647307
Lesenswert?

Was hast Du verändert? Warum hast Du die Pinkonfiguration geändert?
Wie genau äußert sich das Problem (kein Connect, kein Erase, Flashen 
wird verweigert)?

Du könntest noch versuchen an den eingebauten UART Bootloader zu kommen.

Wenn Du allerdings ausversehen die Sicherheitsfeatures aktiviert hast 
wird es schwierig. Ist aber im Moment eher Orakeln.
OP #3647378
Lesenswert?

Das Layout und das Programm kann ich leider nicht veröffentlichen. Das 
Layout wurde extern von einer Firma entwickelt, daher sollte das eig. 
funktionieren.  Ich habe jetzt nochmal einen Pin am µC gemessen, der 
definitiv HIGH sein sollte und kann dies bestätigen. Ich gehe also davon 
aus, dass der µC an sich funktioniert und das Programm abspielt.

Ich habe im GPIO-Register mit den vorgefertigten Funktionen der 
stm32f4xx_gpio.c Lib, jeweils die Pins neu konfiguriert. Das war nötig, 
um andere Pins zu nutzen, die layout-technisch günstiger liegen.

Die SWD-Pins habe ich nicht angerührt.

Was sollen das für Sicherheitsfeatures sein?

BOOT0 ist auf Masse gezogen und BOOT1 offen.

ST-LINK zeigt einen Fehlermeldung "No Target Connected" also überhaupt 
keine Kommunikation.

CooCox sagt mir "Error: Connect failed, check config and cable 
connection"

Das gleiche Programm habe ich eben noch auf ein Discoveryboard mit dem 
gleichen µC geflasht und dort kann ich danach auf alles zugreifen.
Gast #3647385
Lesenswert?

Wenn es nur auf dem neuen Board auftritt und es beim ersten Mal ging, 
kann es auch ein Kurzschluß gegen einen anderen gpio sein:

Vor dem ersten Programmieren ging alles, weil der gpio High-Z war. Jetzt 
ist er als Output konfiguriert und beeinflusst durch einen Kurzschluß 
den SWD-Pin ?!

Mess mal nach, was sich auf dem SWD-Pin bewegt.

Gruß, Stefan
OP #3647494
Lesenswert?

Ich habe mir jetzt das Flash Programming Manual angesehen. Um den 
Schreibschutz oder ähnliches zu aktivieren, müsste ich softwareseitig 
Einstellungen vornehmen. Das heißt, dass mein Programm auf jedem 
Mikrocontroller eine Sperrung hervorrufen würde. Da aber das gleiche 
Programm auf dem Discoveryboard geflasht wurde und ich immer noch auf 
den µC zugreifen kann, kann ich das Thema Schreibschutz meiner Meinung 
nach ausschließen.

Mit dem Multimeter messe ich bei SWDIO 3,3V und bei SWDCLK 0V, wenn der 
Programmieradapter abgesteckt ist. Ist die 3,3V Spannung normal bei 
SWDIO? Ansonsten könnte dort evtl. ein Kurzschluss liegen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren