Forum: Mikrocontroller und Digitale Elektronik STM32 mit CubeMX Anleitungen


von tommy (Gast)


Lesenswert?

hasst es oder lernt es

hier ein paar Anleitungen zum Einstieg
http://empa.com/dokumanlar/st2016/

von grundschüler (Gast)


Lesenswert?

tommy schrieb:
> hasst es oder lernt es

bei mir noch nicht ganz klar.

habe cubemx + sw4stm32 + stlink_v2 installiert.

Ein blinky-programm geclickt. eclipse workbench geöffnet. compiliert.


Wie bekomme ich das Programm jetzt über den link auf den chip?

von Leera (Gast)


Lesenswert?

grundschüler schrieb:
> Wie bekomme ich das Programm jetzt über den link auf den chip?

Ist das jetzt dein Ernst oder machst du einen auf Spassvogel?

von dasrotemopped (Gast)


Angehängte Dateien:

Lesenswert?

FYI

von grundschüler (Gast)


Lesenswert?

dasrotemopped schrieb:
> Autor:
>
>         dasrotemopped (Gast)

danke.

Fehlermeldung
Error: jtag status contains invalid mode value - communication failure
Polling target STM32F103C8Tx.cpu failed, trying to reexamine
Examination failed, GDB will be halted. Polling again in 6300ms

Irgendwas passt mit dem link noch nicht.

von dasrotemopped (Gast)


Angehängte Dateien:

Lesenswert?

funktioniert es die Binary /Projektordner/Debug/projektname.bin mit 
ST-Link zu programmieren ?
Wenn die *.bin nicht da ist hat das Kompilieren nicht geklappt.
Nach dem Build muss das so wie im Bild aussehen.

von grundschüler (Gast)


Lesenswert?

mit coiden geht der link:

C:\CooCox\CoIDE>"C:/CooCox/CoIDE/bin\coflash.exe" program STM32F103C8 
"C:/CooCox/CoIDE/workspace/70_new/70_new/Debug/bin/70_new.elf" 
--adapter-name=ST-Link --port=SWD --adapter-clk=1000000 --erase=affected 
--reset=SYSRESETREQ --driver="C:/CooCox/CoIDE/flash/STM32F10x_MD_64.elf"

Erase:   Done
Program:   Done
Verify:   Done

in SW4 ist der Debugger openOCD: "${openstm32_openocd_path}\openocd.exe"

an Dateien finde ich nur: OPENOCD.EXE-277F0452.pf

openocd ist mglw. gar nicht installiert?

von dasrotemopped (Gast)


Lesenswert?

bei mir installiert AC6 / SW4STM32  OpenOCD da hin:
C:\Ac6\SystemWorkbench\plugins\fr.ac6.mcu.externaltools.openocd.win32_1. 
13.1.201703061523\tools\openocd\bin

Wenn bei dir das Plugin fehlt, mal ein Online Update machen ?

von grundschüler (Gast)


Lesenswert?

dasrotemopped schrieb:
> Wenn bei dir das Plugin fehlt, mal ein Online Update machen ?

Das hilft schon mal weiter, danke. Das plugin ist vorhanden. Werde die 
ocd.exe mal separat testen.

von grundschüler (Gast)


Angehängte Dateien:

Lesenswert?

mit openOCD klappts irgendwie nicht.

Mit flash.exe kann ich die *.elf problemlos auf den chip laden. Fehlt 
nur das on-chip-debugging.

Die Anleitung für openOCD hat 172 Seiten. Da es mit flash.exe geht, hab 
ich da wenig Lust drauf. Jemand noch eine Idee? Kann es am Link liegen? 
Der ist schon einige Jahre alt. Eigentlich müsste das doch nach der 
sw4-installation auf Anhieb gehen.

Bekomme ich flash.exe als Debug-tool in sw4 rein?
oder bekomme ich coide als ide in cubemx rein?

Das mit der Konfiguration in cubemx gefällt mir eigentlich ganz gut.

von dasrotemopped (Gast)


Lesenswert?

>Kann es am Link liegen? Der ist schon einige Jahre alt.
Schon mal ein Firmware update mit ST-Link Utility gemacht ?
Wird der tatsächlich als ST-Link V2 erkannt ?
Die preiswerteste Lösung kann ein Nucleo Board sein, an dem du dir 
einfach den ST-Link abbrichst.

>Das mit der Konfiguration in cubemx gefällt mir eigentlich ganz gut.
Schön zu hören.

Gruß,
dasrotemopped.

von Bernd Strobel (Gast)


Lesenswert?

Auf jeden Fall vielen Dank an tommy für das Teilen dieses Links. Hat mir 
glaub ich eine Menge googlen und demotivierendes Ausprobieren von nicht 
funktionierenden Tools/Tool chains  erspart.

Hab bei einer meiner letzten Bestellungen mal ein Nucleo64 Board 
mitbestellt und hatte bisher noch keine Lust, mir mühsam die Tool chain 
aufzubauen. Jetzt kann ich nach einer Stunde schon losspielen. Blinky 
blinkt schon in meinem Rhythmus. :)

Also, drei Daumen hoch!

von Markus (Gast)


Lesenswert?


von Stefan F. (Gast)


Lesenswert?

Ich hatte auch mit dem SW4 einen schnellen Einstieg, kann ich nur 
empfehlen. Ich habe meine ersten Erkenntnisse dazu hier notiert: 
http://stefanfrings.de/stm32/index.html

von Rene K. (xdraconix)


Lesenswert?

Stefan U. schrieb:
> Ich hatte auch mit dem SW4 einen schnellen Einstieg, kann ich nur
> empfehlen. Ich habe meine ersten Erkenntnisse dazu hier notiert:
> http://stefanfrings.de/stm32/index.html

Kann ich empfehlen :-D Gerade die Liste der nötigen Daten- / 
Referenzblätter hat mir sehr über die ersten F103-Runden geholfen ^^

von Stefan F. (Gast)


Lesenswert?

Danke Rene, du bist mein erster treuer Anhänger :-)

von Fred (Gast)


Lesenswert?

>Autor: tommy (Gast)
>hier ein paar Anleitungen zum Einstieg
>http://empa.com/dokumanlar/st2016/

Super Folien. Danke dafür.

Heute habe ich mal versucht, den DAC auf dem STM32F4 Discovery 
anzusteuern, aber leider hat es nicht geklappt.

>hasst es oder lernt es
loll

von Bernd Strobel (Gast)


Lesenswert?

Markus schrieb:
>>Nucleo64 Board
> http://www.st.com/en/evaluation-tools/nucleo-f401re.html
>
> Meinst Du dieses?

Nein, ein F411RE. Bisher blinkts aber nur. Familiäre Verpflichtungen. 
Aber ein funtkionierende Toolchain parat zu haben bedeutet, sofort 
loslegen zu können, wenn mal ein, zwei Stündchen frei sind.

Hab in der letzten Zeit ein paar SD/MMC+FATFS Implementationen auf dem 
ATMega328 durchprobiert für ein kleines Projekt und bin beim Elm-chan 
hängen geblieben. Das hat ganz schön Zeit gekostet. Auf dem ST gibt es 
sowas ja schon in der Grundaustattung mit dazu. Da kommt ein 
Hobbyprogrammierer mit beschränktem Zeitbudget vielleicht schneller zum 
Ziel. Mal sehen, jedenfalls ist das jetzt mein neues Spielzeug. :)

von Bernd Strobel (Gast)


Lesenswert?

Hab übrigens auf dieser Webseite noch ein bisschen rumgesucht. Wenn man 
das "st2016" aus dem Pfad entfernt, dann gibt es da noch mehr zu finden: 
http://empa.com/dokumanlar/

Ich finde auf den ersten Blick dieses 
http://empa.com/dokumanlar/STM32F4-Labs.pdf auch sehr hilfreich für 
vorgebildete Einsteiger.

von Markus (Gast)


Lesenswert?

>Nein, ein F411RE. Bisher blinkts aber nur. Familiäre Verpflichtungen.
>Aber ein funtkionierende Toolchain parat zu haben bedeutet, sofort
>loslegen zu können, wenn mal ein, zwei Stündchen frei sind.

Ja, das Familienleben lässt kaum Freiheiten. Mich wundert es immer, wie 
viel die Leute in der kurzen Zeit schaffen, die sie neben der Familie 
haben. Aber wahrscheinlich führt Zeitknappheit auch zur Effizienz.

Welche Projekte willst Du damit realisieren?

von Markus (Gast)


Lesenswert?

>> Meinst Du dieses?
>Nein, ein F411RE.

Was mir gerade auffällt: STM hat ja fast für jeden Ihrer Prozessoren ein 
Nucleo-Board.
Was ist der Vorteil vom F411RE ?

von DraconiX (Gast)


Lesenswert?

Markus schrieb:
> Meinst Du dieses?
>
> Nein, ein F411RE.
>
> Was mir gerade auffällt: STM hat ja fast für jeden Ihrer Prozessoren ein
> Nucleo-Board. Was ist der Vorteil vom F411RE ?

Gegenüber wen? In der F4 Reihe hat er gegenüber dem F401 mehr Flash und 
RAM... Aber dafür hat der Hersteller auch eigene Tabellen:

http://www.st.com/resource/en/flyer/flstm32f4x1.pdf

von Markus (Gast)


Lesenswert?

Mich interessiert, warum Bernd ein F411RE gewählt hat.

von Peter S. (Gast)


Lesenswert?

Hallo ich habe ein STM32F103, habe über CubeMX eine Datei erstellt. 
Dabei habe ich einen externen Quarz, I²C, 2 GPIO's aktiviert und wollte 
zudem den JTAG aktivieren. Kann mir einer sagen welche Pin's das wären 
für den JTAG? Und muss ich nicht bei Periphals JTAG aktivieren? Denn da 
finde ich keinen JTAG :/

Mein noch größeres Problem an der Stelle ist das ich die Datei auf das 
Board geflasht habe ohne JTAG. Dadurch habe ich wahrscheinlich die JTAG 
Pin Belegung des Controllers geändert hat -.- kennt ihr eine möglichkeit 
wie ich den Flash Speicher des Controllers löschen kann ohne JTAG? Ich 
weiß da ist innerhalb einer Minute echt eine menge schief gegangen ich 
hoffe der ein oder andere kann mir weiter helfen.

von Stefan F. (Gast)


Lesenswert?

Ich rate Dir dazu, die SWD Schnitsttelle zu bevorzugen, da sie weniger 
Leitungen benötigt und schneller ist.

Unabhängig davon sind bei allen STM32 Controllern sowohl SWD als auch 
JTAG während des Reset Impulses ansprechbar. Auch der serielle 
Bootloader geht immer, wenn du die Boot Jumper entsprechend einstellst.

Lies das mal:
http://stefanfrings.de/stm32/index.html#tools
http://stefanfrings.de/stm32/index.html#proginterfaces

Mache bitte nächstes mal einen eigenen neuen Thread auf.

von Peter S. (Gast)


Lesenswert?

Danke für die Antwort das hat schon mal geklappt der Speicher ist jetzt 
wieder frei :) wenn ich jedoch den generierten Code aus dem CubeMX 
wieder drauf ziehe passiert das gleiche nochmal.

Gibt es irgendwas zu beachten wenn ich beim CubeMX den JTAG konfiguriere 
bisher habe ich das so gemacht das ich die 4 Pins SYS_JTMS_SWDIO, 
SYS_JTCK_SWCLK, SYS_JTDI, SYS_JTDO_TRACESWO angeschaltet habe? Jedes mal 
wenn ich das neue Projekt drauflade muss es wieder gebootet werden...

von Stefan F. (Gast)


Lesenswert?

Peter S. schrieb:
> Gibt es irgendwas zu beachten wenn ich beim CubeMX den JTAG konfiguriere

Cube MX hat eine separate Einstellung für das Debugging. Siehe erster 
Screenshot in 
https://community.st.com/s/question/0D50X00009XkXxiSAF/stm32-cubemx-sys-debug-settings

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.