Entwicklungsumgebung für die Firmware einrichten

Aktuell arbeitet nur Steve an der Firmware und den Tools für unsere Uhr. Alles ist aber open-source, also warum nicht mitwirken ?

Ich möchte hier noch mal beschreiben, wie ich meine Entwicklungsumgebung (auf dem MAC) aufgesetzt habe. Dadurch soll die Hürde verrringert werden, wenn sich jemand mit der PIC-Entwicklung und der Uhr im Speziellen beschäftigen möchte.

Als erstes folge man der Anleitung, die Steve auf seinem Blog Eclipse einrichten beschrieben hat. Installiert also die UECIDE und über den dortigen Plugin-Manager das Board “PIC32 Pinguino (Olimex Bootloader)”, den ChipKit core (den chipKit-Git habe ich nicht probiert) und den Compiler. Das sollte dann so aussehen

Bildschirmfoto 2015-08-18 um 18.52.58

Nun Eclipse CDT installieren und ein erstes Projekt anlegen (für die ChipKit-Core Libraries) : statische Library, C++, Cross-Toolchain. Beim “Cross-GCC” dem Screenshot aus Steve’s Artikel folgen.

Dann den ChipKit Core aus dem UECIDE in das Eclipse-Projekt importieren. Danach die Compiler-Optionen wie beschrieben aus dem UECIDE-Debug-Fenster kopieren (einfach in der UECIDE den “Blink”-Sketch aus den Examples kompilieren). In den Projekt-Settings nun die Einstellungen vornehmen:

Bildschirmfoto 2015-08-18 um 19.04.11 Bildschirmfoto 2015-08-18 um 19.04.30 Bildschirmfoto 2015-08-18 um 19.04.41 Bildschirmfoto 2015-08-18 um 19.04.52

Beim “Command” für den Assembler auch “gcc” nehmen. Da steht per Default “as” (den es auch im GNU-Umfeld gibt – hat mich einige Zeit gekostet …). Die Kompiler-Optionen so bearbeiten, bis es in den “All options” passt.

Dann legt man im Projekt noch ein Verzeichnis “board” und Wichtig extrahiert die 3 Dateien aus dem “Chipkit-core”-Archiv auf Steve’s blog. Das sieht dann so aus:

Bildschirmfoto 2015-08-18 um 19.12.05

Nun sollte man den Core fehlerfrei kompilieren können.

Jetzt geht es an das eigentliche Firmware Projekt. Dazu auswählen “File/Import/Projects from Git/Clone URI” und dann als URI die des Firmware-Repos angeben Firmware im Git. Darin sind dann schon alle Einstellungen aus Eclipse von Stefan drin.

In den Projekt-Settings geht Ihr durch die ganzen Optionen (gcc, g++, Assembler und Linker) durch und ersetzt die Pfade seiner Installation durch Eure. Auch die Variablen “core” und “pic32tools” anpassen wie hier gezeigt:

Bildschirmfoto 2015-08-20 um 21.17.26

Hier als Beispiel wie es beim g++ bei den Includes aussehen sollte:

Bildschirmfoto 2015-08-20 um 21.22.35

Im Git sind von Steve bereits angepasste Versionen der “SD” und der “IRemote” Libraries. Die “DSPI”, “OneWire” und “Wire” Bibliotheken findet Ihr im Verzeichnis der UECIDE “cores/chipKIT/libraries”. Diese verlinkt Ihr zum Projekt. Zusätzlich braucht man noch diese 2 Bibliotheken : RTClib DallasTemperature. Ich habe die beiden einfach in das “libraries” vom ChipKIT kopiert.

Am Ende sollte das Ganze dann wie folgt ausschauen:

Bildschirmfoto 2015-08-20 um 21.16.17

Als letzten Schritt muss man noch in der Datei “GenericTypeDefs.h” im Verzeichnis “<install verzeichnis der uecide>/uecide/compilers/pic32-tools/pic32mx/include” ein “#undef BYTE”  einfügen. Das sollte um Zeile 342 sein und dann am Ende so ausschauen:

Bildschirmfoto 2015-08-20 um 21.29.14

Nun könnt Ihr einen Build starten und solltet dann am Ende ein “goDMD.hex” erhalten. Bei Fragen oder Schwierigkeiten schreibt einen Kommentar oder meldet Euch direkt bei mir.

-Markus

Dieser Beitrag wurde unter Anleitungen veröffentlicht. Setze ein Lesezeichen auf den Permalink.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>