• 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
      • Eingebettete Systemsoftware
      • 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 2024/25
      • Betriebssysteme
      • Middleware – Cloud Computing
      • Systemprogrammierung 2
      • Verlässliche Echtzeitsysteme
      • Virtuelle Maschinen
      • Web-basierte Systeme
    Portal Lehre
  • Examensarbeiten
  1. Startseite
  2. Extern

Extern

Bereichsnavigation: Lehre
  • System-Level Programming
    • Lecture
      • Exercises
        • SPiCboard
          • Building Instructions
            • FAQ
              • Programming at Home
                • Programming in the CIP
                  • Projects
                    • Soldering Instructions
                      • SPiC-IDE
                        • SPiCsim
                          • libspicboard-doc
                          • Slides
                          • Assignments
                          • Linux libc-doc
                          • Exam
                            • Intern
                              • Contact

                            FAQ

                            SPiC-IDE

                            Foreword

                            The SPiC-IDE (Integrated Development Environment) was developed for the usage with Linux and is based on the free editor Pulsar. The goal is an easy and intuitive way into system level programming: all necessary tools should be available easily without too much functionality, as your goal is to focus on the programming and not the working environment.

                            But, as every new project, the SPiC-IDE may have need for improvement. If any errors occur, or if you have helpful suggestions for improvements, we'd like to welcome a mail to i4spic@lists.cs.fau.de.

                            Starting the IDE

                            • Select the SPiC-IDE in the start menu under Development
                            • Alternatively, press the Windows key and enter "SPiC", then an icon with the name SPiC IDE should appear.
                            • Alternatively, the IDE can be started with the script /proj/i4spic/bin/editor.
                            • It can take a few seconds until the IDE has started, especially at the first start.

                            The user interface

                            The SPiC-IDE has multiple different modes: For the microcontroller (first part of SLP), the hardware can be programmed with  SPiCboard, while  SPiCsim offers a simulator. For the second part, there is a mode for the system programming with  Linux. The example shows the interface in the SPiCboard mode.

                            • On the left side under Project is your SPiC project directory (here should be your name instead of uj66ojab).
                              • For each exercise, you have to create a subdirectory aufgabeX, where X is the corresponding exercise number
                              • In the subfolder korrektur are your corrected submissions as PDF.
                              • The subfolder pub is a symlink to the public folder, which contains examples, slides and the exercise sheets. You can only read this folder!
                            • In the top you can find the tool bar, which offers access to the most used functionalities.
                            • In the center is the main workspace, here is the text editor.
                              • Multiple tabs can be opened simultaneously, a side-by-side presentation is also possible.
                              • Not only source code, but also PDFs (e.g., exercise sheet, slides or correction) or HTML documents can be shown.
                            • Below that, other windows are displayed on demand
                              • Shell Commands shows the output of the commands of the tools - e.g., in case of an error when compiling, the error message (file and line of code) is shown here
                              • In the terminal, a shell is executed
                              • When searching errors, the bebugger can be controlled with the keys. On the right, the call stack and variables are displayed.
                            • By pressing the Alt key, the menu is presented - however, this is not necessary during the exercises.

                            Die Werkzeugleiste

                            • On the left, the for text editing are on the left side:
                              • Create new folder. As name, you should pick aufgabeX/, where you should use the exercise number instead of X. Note: lower case and no spaces!
                              • Open new (empty) file.
                              • Save file. The name of the source file is given by the exercise sheet and is necessary for a successful submission. If there are unsaved changes, the symbol is colored.
                              • Submit current solution (the exercise folder has to be aufgabeX and the file name has to match the exercise sheet). Multiple submissions are possible (and you are encouraged to use it!). The last submission before the submission deadline is rated.
                              • Show the last submission of the current exercise (if available)
                              • Ask for the remaining time of the current exercise.
                              • Revert changes.
                              • Redo changes.
                              • Format marked source code. If no code is marked, the whole file is formatted.
                              • Move current window into new space on the right. This split view is good for, e.g., displaying the documentation side by side with the source code.
                              • Show keyboard with US layout.
                              • Change between light and dark design.
                            •  SPiCboard Change between the different modes; for the microcontroller there are following buttons:
                              •  Compile Compile C source code to optimized machine code for the Atmega328pb (good for finding syntax errors)
                              •  Flash Flash program onto the connected SPiCboard (compiles the C source code if necessary)
                              •  Debug Compile C source code without optimizations, flash onto the SPiCboard, change into the debug mode. Breakpoints can be created by clicking in front of the line number in the source code (red point in from of the row number)
                              •  Solution Flash sample solution of the corresponding exercise onto the connected SPiCboard
                              •  Help Show the help for the IDE and for the libspicboard.
                            •  SPiCsim Change between the different modes. For the simulation of the microcontroller, there are the following buttons:
                              •  Compile Compile C source code to optimized machine code for the Atmega328pb
                              •  Simulate Open programm in the SPiCsim (Compiling happens if necessary)
                              •  Debug Compile C source code without optimizations with debug information and start the SPiCsim in troubleshooting mode. Breakpoints can be added by klicking in front of the line number in the C source code (red point in front of line)
                              •  Solution Start solution in the simulator
                              •  Help Show documentation for the libspicboard.
                            •  Linux Change between the different modes; for the system programming with linux, the following buttons are available:
                              •  Make Calls the Build-Management-Tool with make Dateiname for translating the C source code. The button is grey if there is no Makefile in the corresponding folder.
                              •  Debug Change into the debug mode, shows an interface for configuring the GDB.
                              •  Terminal Show or hide integrated terminal.
                              •  Help Show the help for development in Linux (especially the SPiC-Zettel for the C Standard Library [libc])

                            For shell script files, the IDE displays a button to start the execution. Scripts from untrusted sources should not be executed, as such scripts can install unwanted programs or delete all of your data!

                            The slides (from the pub folder) can be displayed in the editor. For this, use the following buttons:

                            • Show previous page
                            • Show next page
                            • Reset zoom mode
                            • Zoom in
                            • Zoom out
                            • Fit to width

                            For many actions (such as  Compile), the console offers additional information and error messages. Sometimes, a user interaction is necessary (for example when submitting as a group)

                            Friedrich-Alexander-Universität
                            Erlangen-Nürnberg

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