• Navigation überspringen
  • Zur Navigation
  • Zum Seitenende
Organisationsmenü öffnen Organisationsmenü schließen
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
  • FAUZur zentralen FAU Website
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Suche öffnen
  • English
  • Campo
  • StudOn
  • FAUdir
  • Stellenangebote
  • Lageplan
  • Hilfe im Notfall
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
Menu Menu schließen
  • Lehrstuhl
    • Team
    • Aktuelles
    • Kontakt und Anfahrt
    • Leitbild
    • 50-jähriges Jubiläum
    Portal Lehrstuhl
  • Forschung
    • Forschungsbereiche
      • Betriebssysteme
      • Confidential Computing
      • Embedded Systems Software
      • Verteilte Systeme
    • Projekte
      • AIMBOS
      • BALu
      • BFT2Chain
      • DOSS
      • Mirador
      • NEON
      • PAVE
      • ResPECT
      • Watwa
    • Projektkampagnen
      • maRE
    • Seminar
      • Systemsoftware
    Portal Forschung
  • Publikationen
  • Lehre
    • Sommersemester 2025
      • Applied Software Architecture
      • Ausgewählte Kapitel der Systemsoftware
      • Betriebssystemtechnik
      • Projekt angewandte Systemsoftwaretechnik
      • System-Level Programming
      • Systemnahe Programmierung in C
      • Systemprogrammierung 1
      • Verteilte Systeme
    • Wintersemester 2025/26
      • Systemprogrammierung 2
      • Betriebssysteme
      • Middleware – Cloud Computing
      • Echtzeitsysteme
      • Virtuelle Maschinen
      • Web-basierte Systeme
      • Projekt angewandte Systemsoftwaretechnik
      • Aktuelle Entwicklung in Verteilten und Objektorientierten Betriebssystemen (für Bachelor-/Masterarbeit)
    Portal Lehre
  • Examensarbeiten
  1. Startseite
  2. Extern

Extern

Bereichsnavigation: Lehre

Programming in the CIP

Development Environment

Development with the SPiC-IDE

Start

  • Login at a CIP computer with username and password (look at I have no login for the Informatik CIP), you can use the default window manager.
  • Select the SPiC-IDE from the available programs
  • Alternatively, the IDE can be started with the script /proj/i4spic/bin/editor.
  • It can take a few seconds for the IDE to start, especially at the first start.

User Interface

The SPiC-IDE has different user interfaces: for the microcontroller (first part of the lecture), the IDE can be used with  SPiCboard to program the hardware, while  SPiCsim offers a simulator. For the second part of the lecture,  Linux offers a mode for the system-programming section.

The usage is explained at SPiC-IDE in more detail.

Usage without IDE

The most important paths in the CIP

  • /proj/i4spic/pub/ Publich folder with exercise sheets, additional material and example applications. Additionally, for many exercises there are example implementations available.
  • /proj/i4spic/LOGIN Your SPiC project directory.
  • /proj/i4spic/bin/ Scripts, e.g., for submission.

Create your project directory

  • Open Terminal (View -> Tool Views -> Show Terminal)
  • Change into the i4spic user directory: cd /proj/i4spic/LOGIN Hint: The tab key completes the directory/file name if possible.
  • Create exercise directory: mkdir aufgabeX (where X is the exercise number)
  • Change into the exercises directory: cd aufgabeX
  • Create exercise file: touch aufgabenname.c
  • Copy the SPiC Makefile into the current directory: cp /proj/i4spic/pub/libspicboard/Makefile .

Text Editor (Example: Kate)

  • Change into the exercise directory: cd /proj/i4spic/LOGIN/aufgabeX
  • Start Kate: kate aufgabenname.c

Flashing with Linux / in the terminal

  • To flash the program onto the SPiCboard, a Makefile with instructions for the tool make is used.
  • Change into the directory with the program to be used: cd blink
  • In case that the SPiC Makefile is not yet in the directory: cp /proj/i4spic/pub/libspicboard/Makefile .
  • Call make <programmname>.flash; for example: make blink.flash

Magic Makefile (for microcontroller projects)

  • The typical way to translate C source code into a binary is make, which executes the commands described in the Makefile (located in the same directory).
  • It is useful to include the debug.mk from the libspicboard library in a separate Makefile by adding
    LIBSPICBOARDDIR ?= /path/to/libspicboard
    include $(LIBSPICBOARDDIR)/debug.mk
    Therefore, generic targets are included, which are sufficient for the most smaller projects (made out of one file): A file blink.c can be translated and flashed onto the connected SPiCboard by executing
    make blink.flash
    .
  • For more complex projects, specificc targets can be created; for example a project of the three files main.c, display.c and sensor.c can be compiled to the binary file watch.elf with the additional dependencies
    watch.elf: main.c display.c sensor.c
    in the previously created Makefile. Of course, it is also possible to overwrite the rule, e.g., to pass own parameters to the compiler:
    watch.elf: main.c display.c sensor.c
        $(CC) $(CFLAGS) -Wshadow -DFOO=1 -o $@ $^ $(LDFLAGS)
    Now, it is also possible to call the other targets such as
    make watch.flash
    for the new project.
  • A detailed listing of the functionality can be printed with
    make help
    .
Friedrich-Alexander-Universität
Erlangen-Nürnberg

Schlossplatz 4
91054 Erlangen
  • Impressum
  • Datenschutz
  • Barrierefreiheit
  • Facebook
  • RSS Feed
  • Xing
Nach oben