eclipse

Eclipse - Eine Entwicklungsumgebung

Eclipse ist eine umfangreiche Entwicklungsumgebung für C. Die Verwendung der open source Toolchain GCC für ARM und einige Plugins für Eclipse führen zu einer ziemlich professionellen Entwicklungsumgebung für Mikrocontroller.
Die Installation ist allerdings im Vergleich zu kommerziellen Lösungen recht aufwendig und nicht durch eine einzelne Installationsdatei abgedeckt.
In diesem Blog gibt es ein paar Artikel, die eine mögliche Installation beschreiben. Diese wurde durch das Lesen verschiedener Anleitungen, Blogs und Foreneinträge zusammengestellt. Es wird sich dabei auf die Mikrocontrollerplattform STM32 (STM32F0 discovery für Codebeispiele) konzentriert und installiert.
Es werden Eclipse Luna, ARM GCC Plugin 3.1.1 sowie OpenOCD 0.8.0 unter Windows 8.1 zur Beschreibung verwendet. Das Ganze ist im Stil eines Tutorials geschrieben.

Inhaltsübersicht

  1. [Toolchain installieren] 
  2. [Eclipse und CDT installieren]
  3. [GNU ARM Eclipse installieren]
  4. [ST-Link und OpenOCD installieren sowie das erste Beispielprojekt]
  5. [Packs mit Mikrocontroller und Boarddaten laden]
  6. [Registerview auf Basis der Packs verwenden]
  7. [STM32CubeMX]
  8. [MinGW installieren]
  9. [unity verwenden]
  10. [Codedokumentation mit Doxygen, Eclox und GraphViz]


Das Ergebnis - Meine Entwicklungsumgebung

Die Entwicklungsumgebung besteht aus der Basis Eclipse und dem CDT-plugin. Zusätzlich wurde die toolchain armgcc installiert, Eclipse um die Plugins armgcc sowie STM32CubeMX erweitert. Zur Programmierung und dem Debugging wurde OpenOCD installiert und in Eclipse eingerichtet.
Zusätzlich habe ich den Versuch gestartet das Thema unittests zu integrieren und die Programmierung auf eingebettete Systeme anzuwenden. Dafür wurden in der Entwicklungsumgebung "unity" und MinGW installiert, sowie notwendige "configurations" erstellt. Somit können die Unterprogramme, die nicht direkten Zugriff auf die Hardware des Mikrocontrollers benötigen auf dem PC getestet werden. Die folgende Abbildung zeigt die Struktur.
Entwicklungsumgebung und das DrumHerum

Disclaimer

Als Autor dieser Seite muss ich zugeben, dass ich gar nicht soviel kann. Die ganzen Einstellungen kann sich jeder durch eine Suche im Internet selbst erarbeiten. Es gibt auch deutlich umfangreichere Installationsanleitungen für die gezeigten Inhalte. Mein Dank gilt also vor allem den Bloggern, die bereits vor mir viele Informationen frei zur Verfügung gestellt haben.

Was noch fehlt - Der Ausblick

Mal sehen. Ideen gibt es immer. Ich suche zum Beispiel noch immer eine Möglichkeit, Messwerte grafisch anzuzeigen. Dafür könnte ich mir ein Plugin vorstellen, welches Daten von der seriellen Schnittstelle direkt in (Linien-, Kuchen-, ...) Diagramme überführt oder die Daten in einer Datenbank speichert. Vielleicht gibt es soetwas ja schon.