Forum: Mikrocontroller und Digitale Elektronik STM32 ohne Nucleo läßt sich nicht programmieren


von Chris (Gast)


Lesenswert?

Ich möchte einen STM32F446 mittels SWD unter Linux flashen. Dazu benutze 
ich einen ST-Link von einem Nucleo-Board, welchen ich "entkoppelt" habe. 
Dessen CN4 ist mit meinem STM32 verbunden.

Leider kann keines meiner Tools den STM32 ansprechen. Von 
STM32CubeProgrammer erhalte ich DEV_NO_DEVICE, texane/st-flash ist nicht 
besser.

Ich habe es mit BOOT0 high und low ausprobiert, und im Programmer Hard 
Reset und Soft Reset eingestellt (was immer das bedeutet), aber alles 
funktioniert nicht.

Woran kann es liegen, daß mein STM32 nicht antwortet?

Reicht die Stromversorgung des SWD-Interfaces aus, oder muß ich meine 
Platine auch normal versorgen?

von Nico W. (nico_w)


Lesenswert?

Sicher das dein SWD Interface überhaupt eine Spannung für die Versorgung 
zur Verfügung stellt?

von Martin B. (ratazong)


Lesenswert?

Ich programmiere meine STMF411 auch mit dem NucleoSWD. Der erwartet an 
dem 3.3V Pin eben 3.3 Volt. Das ist ein Eingang. Die Spannung für die 
Versorgung des zu programmierenden chips musst Du extra bereitstellen. 
Der nucleo SWD guckt nur nach, ob die in Ordnung ist.

von Harry L. (mysth)


Angehängte Dateien:

Lesenswert?

Hast du die UDEV-Rule installiert?
Ohne fehlen dir die Rechte um auf den ST-Link zuzugreifen.

Läuft hier problemlos.

Ich hab dir mal das Rules-File angehängt.
Das musst du in /etc/udev/rules.d kopieren (als root) und anschließend 
mit
1
sudo service udev restart
das udev-Subsystem restarten, oder den Rechner neu booten.

: Bearbeitet durch User
von Nico W. (nico_w)


Lesenswert?

Ich kann mich nicht erinnern je eine udev rule beim Nucleo angelegt zu 
haben und auf meiner Ubuntu Kiste lief das immer ohne sudo.


Aber ich bin auch schonmal hart drauf reingefallen, weil das Board keine 
Spannung durch die normale Versorgung gesehen hat (war bei mir ein STM8 
über SWIM, kommt aber aufs gleiche raus) und der ST-Link keine Spannung 
zur Verfügung stellt sondern den Pegel nur prüft.


Eine kleine Leitung parallel dazu mit benötigter Spannung hat in meinem 
Fall geholfen.

von Chris (Gast)


Lesenswert?

Autsch, dann stecke ich das nächste Mal wohl lieber den Stecker rein! 
:-D

Ich wußte nicht, daß der 3.3V-Pin ein Eingang ist. Danke!

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.