Programmieren im CIP
Entwicklungsumgebung
Entwicklung mit der SPiC-IDE
Starten
- An einem CIP-Rechner mit Benutzername und Passwort anmelden (siehe auch Ich habe keinen Login für den Informatik CIP), als Windowmanager kann der (standardmäßig eingestellte) Xfce4 verwendet werden.
- Im Startmenü unter Development die SPiC-IDE auswählen
- Alternativ kann die IDE auch durch Ausführen des Skripts
/proj/i4spic/bin/editor
gestartet werden. - Es kann einige Sekunden dauern, bis die IDE gestartet ist, insbesondere beim ersten Start.
Die Oberfläche
Die SPiC-IDE hat verschiedene Entwicklungsmodi: Für den Mikrocontroller (erste Veranstaltungsteil von SPiC) kann mit
die Hardware programmiert werden, während einen Simulator anbietet. Für den zweite Veranstaltungsteil in SPiC gibt es mit einen Modus für die Systemprogrammierung.Die Bedienung wird unter SPiC-IDE ausführlich erklärt.
Benutzung ohne IDE
Die wichtigsten Pfade im CIP
/proj/i4spic/pub/
Öffentlicher Ordner mit Aufgabenstellungen, weiterführendes Material und Beispielanwendungen. Zusätzlich sind für viele Aufgaben Beispielimplementierungen verfügbar./proj/i4spic/LOGIN
Dein SPiC-Projektverzeichnis./proj/i4spic/bin/
Skripte, u.a. für die Abgabe.
Aufgabenverzeichnis anlegen
- Terminal öffnen (View -> Tool Views -> Show Terminal)
- In das i4spic-Benutzerverzeichnis wechseln:
cd /proj/i4spic/LOGIN
Hinweis: Mit der Tab-Taste wird der Verzeichis-/dateiname, wenn möglich, automatisch vervollständigt. - Aufgabenverzeichnis erstellen:
mkdir aufgabeX
(wobeiX
für die Aufgabennummer steht) - In das Aufgabenverzeichnis wechseln:
cd aufgabeX
- Aufgabendatei erstellen:
touch aufgabenname.c
- Das SPiC Makefile in das aktuelle Verzeichnis kopieren:
cp /proj/i4spic/pub/libspicboard/Makefile .
Texteditor (Beispiel: Kate)
- In das Aufgabenverzeichnis wechseln:
cd /proj/i4spic/LOGIN/aufgabeX
- Kate starten
kate aufgabenname.c
Flashen unter Linux / im Terminal
- Um das Programm auf das SPiCboard zu flashen wird ein Makefile mit Anweisungen für das Tool make verwendet.
- In das Verzeichnis mit dem zu flashenden Programm wechseln:
cd blink
- Falls das SPiC Makefile noch nicht in dem Verzeichnis vorhanden ist:
cp /proj/i4spic/pub/libspicboard/Makefile .
make <programmname>.flash
aufrufen; zum Beispiel:make blink.flash
Magisches Makefile (für Mikrocontrollerprojekte)
- Der übliche Weg zum Übersetzen eines C-Quelltextes in eine Binärdatei ist make, welches die in der (im selben Verzeichnis liegenden)
Makefile
beschriebenen Befehle ausführt. - Damit nicht für jedes SPiCboard-Projekt die Regeln händisch beschrieben werden müssen, bietet sich das Einbeziehen der
debug.mk
aus der libspicboard-Bibliothek in einem eigenenMakefile
mittelsLIBSPICBOARDDIR ?= /path/to/libspicboard include $(LIBSPICBOARDDIR)/debug.mk
an. Dadurch werden generische Targets eingebunden, welche für die meisten kleinen Projekte (welche aus nur einer Datei bestehen) ausreichend sind: Eine Dateiblink.c
kann durchausmake blink.flash
übersetzt und auf das angeschlossene SPiCboard übertragen werden. - Für komplexere Projekte können spezifische Targets angegeben werden, z.B. ein Projekt aus den drei Dateien
main.c
,display.c
sowiesensor.c
kann mit der zusätzlichen Abhängigkeitsangabewatch.elf: main.c display.c sensor.c
in der zuvor erstellten Makefile die Binärdateiwatch.elf
kompilieren. Natürlich kann auch alternativ die komplette Regel überschrieben werden, um z.B. eigene Parameter an den Übersetzer zu übergebenwatch.elf: main.c display.c sensor.c $(CC) $(CFLAGS) -Wshadow -DFOO=1 -o $@ $^ $(LDFLAGS)
Nun können auch für solche Projekte die weiteren Targets wiemake watch.flash
aufgerufen werden. - Eine ausführliche Auflistung der Funktionalität wird mit
make help
ausgegeben.