myavr.CHKRonline.de

Informationen und Projekte Rund um die Mikrocontroller-Programmierung
von myAVR (ATmega8), STM32 (Cortex-M3/4) und Raspberry Pi (ARM11)

Der Autor

Christian KrügerIch bin Christian Krüger und ich lebe in der fränkischen Groß­stadt Nürnberg. Aufgewachsen bin ich in dem kleinen Ort Gößnitz am östlichsten Zipfel Thüringens. Nach meinem Abitur am Roman-Herzog-Gymnasium Schmölln erwarb ich meinen Diplom-Ingenieur (FH) in Informations­technik an der Westsächsischen Hochschule Zwickau.

Heute bin ich Teamleiter für die Software­entwicklung Eingebetteter Systeme bei ISCUE in Nürnberg. Hier realisiere ich zusammen mit meinem Team die erfolgreiche Umsetzung verschiedenster Kunden­projekte aus dem Automotive Umfeld und der Elektro­mobilität. Gerne unterstütze ich dabei auch junge Ingenieure beim Einstieg in das Berufsleben im Rahmen und Praktika und Abschluss­arbeiten.

CHKRonline.de

Facebook Profil

Google+ Profil

Twitter Profil

XING Profil

STM32-Eclipse Tutorial

Linux Seite 1

Letzte Änderung: Montag, 26.09.2016 11:04

Linux Installation Komplett

Diese Anleitung erläutert im Detail, wie sich eine GCC ARM Embedded GNU Toolchainunter Linux installieren lässt. Sie begleitet Schritt für Schritt durch die einzelnen Installations- und Konfigurationsschritte, wobei sie die Form eines Fallbeispiels nicht verlässt. Die Anleitung eignet sich für den Aufbau einer neuen Toolkette.

Einleitung

Die folgende Installationsanleitung eignet sich für die Verwendung mit Linux-Systemen auf Debian Basis. Getestet wurde sie mit Ubuntu 12.04 LTS. Eine Anleitung für die Installation unter Windows befindet sich hier. Möglicherweise funktioniert die Toolkette mit neueren Versionen der verwendeten Software nicht mehr richtig.

Die fertige Toolkette arbeitet sowohl mit STM32F2 als auch STM32F4-Mikrocontrollern zusammen, ist dabei aber nicht auf diese beschränkt. Als Programmer wird der ST-Link/V2 eingesetzt. Ziel ist eine möglichst integrierte Toolkette, welche eine einfache Handhabung erlaubt und sich einfach auf andere Rechner portieren lässt. Zu diesem Zweck werden alle ausführbaren Teile der Toolkette in einem Verzeichnis STM32-Eclipse abgelegt. Dieses sollte vor Beginn erstellt werden, z.B. unter:

/opt/STM32-Eclipse

Es sollte darauf geachtet werden, dass der Pfad keine Leerzeichen enthält. Da der verwendete Eclipse-Workspace einen großen Teil der notwendigen Daten hält – z.B. Linker-Script, Startup-Dateien und Template-Projekt, wird er Teil der Entwicklungsumgebung und, z.B. unter

/opt/STM32-Workspace

erstellt. Die Pfade können den eigenen Bedürfnissen angepasst werden.

Es ist ratsam, die Erstinstallation mit Root-Rechten durchzuführen. Dadurch wird sichergestellt, dass installierte Plugins und getroffene Grundeinstellungen im STM32-Eclipse-Verzeichnis und nicht im Home-Verzeichnis des angemeldeten Nutzers gespeichert werden. Unter Ubuntu erreicht man Adminrechte mit dem Befehlt sudo:

sudo –s

Der Datei-Manager lässt sich wiefolgt mit Root-Rechten öffnen:

sudo nautilus

Download

Folgende Software-Pakete werden während der Installation benötigt und sollten heruntergeladen werden.

Compiler und Linker

Der wichtigste Teil der Entwicklungsumgebung sind Compiler und Linker. Für die STM32 Toolkette wird die "GCC ARM Embedded" GNU Toolchain verwendet. Es handelt sich um eine vorkompilierte Fassung der GNU Toolchain.

Für die Installation genügt es, den Inhalt des Archivs gcc-arm-none-eabi-VERSION-linux.tar.bz2 in einen Ordner zu entpacken. Im Beispiel soll der Inhalt in den Ordner STM32-Eclipse entpackt werden.

/opt/STM32-Eclipse/GCC_ARM_Embedded

Nun muss noch die benötigte Umgebungsvariable PATH nachgetragen werden. Der Anhang lautet im Beispiel:

/opt/STM32-Eclipse/GCC_ARM_Embedded/bin

Eine Umgebungsvariable lässt sich unter Ubuntu z.B. wie folgt erstellen.

echo PATH=\"$PATH:/opt/STM32-Eclipse/GCC_ARM_Embedded/bin\" >> /etc/environment
source /etc/environment

Ohne den Nachtrag wird es nicht möglich sein, den Compiler und Linker ohne absolute Pfadangabe auszuführen.

ST-Link Programmer

Texane stlink (stm32 discovery line linux programmer) dient als Verbindungsstück zwischen dem Debugger und dem ST-Link/V2. Das Programm erlaubt einerseits das Programmieren des Flash-Speichers als auch andererseits das Debuggen der Software im STM32-Mikrocontroller.

Das Programm ist OpenSource und muss zuerst kompiliert werden. Der Quellcode steht bei GitHub zur Verfügung. Zum Kompilieren unter Ubuntu müssen zunächst die Pakete "build-essential", "automake", "libusb-1.0" und "git" installiert werden.

apt-get install build-essential
apt-get install automake
apt-get install libusb-1.0
apt-get install git

Darauf kann der Quelltext aus dem Repository geladen und kompiliert werden. Dafür wird eine Internetverbindung benötigt.

mkdir /src
cd /src
git clone git://github.com/texane/stlink.git

cd stlink

sh autogen.sh
automake
autoconf
sh configure
make

Ist der Vorgang erfolgreich abgeschlossen, können die Programme "st-flash" und "st-util" aus dem Verzeichnis st-link in ein Verzeichnis der Entwicklungsumgebung kopiert werden.

/opt/STM32-Eclipse/ST-LINK

Nun benötigen die beiden Programme noch Schreibrechte für USB-Geräte. Die notwendigen Regeln liegen den Quelltext-Dateien und müssen kopiert werden:

cp /src/stlink/49-stlinkv2.rules /etc/udev/rules.d
udevadm control --reload-rules

Da sie auch für eine Neuinstallation der Toolkette notwendig sind, sollten sie ebenfalls in das Verzeichnis

/opt/STM32-Eclipse/ST-LINK

kopiert werden.

Seite 1 von 4 Weiter