Forum: Mikrocontroller und Digitale Elektronik ARM unter Linux flashen


von Stefan Frings (Gast)


Lesenswert?

Hallo,
ich möchte mir (irgendein) preisgünstiges ARM development board kaufen 
und unter Linux mit dem GNU C++ Compiler programmieren.

Wie übertrage ich das kompilierte Programm in das Development Board?

Jeder Hersteller bietet für seine Boards entsprechende Software an, die 
aber immer stark eingeschränkt ist - solange man nicht sehr viel Geld 
für eine Lizenz ausgibt.

Ich möchte lieber auf der Kommandozeile arbeiten. Mir fehlt also nur ein 
Tool (sowas wie avrdude für ATmega), um die Firmware in das Board zu 
bekommen.

Wie läuft das bei ARM normalerweise?

von linuxölbohrturm (Gast)


Lesenswert?

also unter windows kannst du von st den flash loader demonstrator loader 
nehmen der geht ganz gut! wie es mit linux aussieht weiß ich ned würde 
mich auch interesantietiern

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Stefan Frings schrieb:
> Wie läuft das bei ARM normalerweise?

Mit OpenOCD.  Ist nicht ganz wie AVRDUDE, eher wie AVaRICE: ein
OpenOCD läuft als Server.  Mit telnet kann man sich dann zu diesem
verbinden und Kommandos eingeben, während der gleiche Server auf
einem anderen Port lauscht, ob sich ein GDB mit ihm verbinden will.

von asdf (Gast)


Lesenswert?

Yep, OpenOCD und irgendein unterstützter JTAG-Adapter (gibts wie Sand am 
Meer).

von Michael G. (let)


Lesenswert?

Bei den Entwicklungsboards ist oft ein Programmer oder/und Debugger 
drauf der per USB angesprochen wird. Bei den STM32 Discovery Boards ist 
das z.B. ein ST-Link. Dafür gibt es ein Kommandozeilen Tool für Linux. 
Habe ich aber noch nicht benutzt.

Ansonsten ist bei den meisten Controllern auch ein Bootloader 
installiert der per UART benutzt werden kann. Für die LPC1xxx/LPC2xxx 
sowie die STM32xxxx gibt es auch  Commandline Tools dazu. lpc21isp für 
NXP Controller und stm32flash für ST. Die kommen in der Funktion dem 
avrdude schon recht nahe.

Die Bootloader sind unproblematischer als die JTAG/SWD Schnittstellen da 
keine besondere Konfiguration erforderlich ist. Dafür kann man darüber 
nicht debuggen.

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.