Exercises

Exercise Content

The exercises include tutorial and computer exercises. Tutorial exercises will deepen and complement the lectures contents. Additional programming tasks facilitate practical experience on system-level programming. In the computer exercises, workstations in the computer room are reserved for SLP/SPiC students, whereby a supervisor will generally be available to provide assistance if required. In these exercises, system-level programming is practiced in two ways: On the one hand in the form of programming the hardware of an AVR microcontroller directly, on the other hand by reimplementing some common Linux system tools.

Exercise Slides

No. Topic Week Slides Material
1 Orga, IDE, Optimizations, Exercise 1 28.04.2025 Handout, Animated
2 Data Types, Visibility, Bitoperations, Modulo, Polling, Exercise 2 05.05.2025 Handout, Animated
3 Moduls, I/O Ports, Register, Exercise 3 12.05.2025 Handout, Animated
4 Additions Pointers, Hands-On (Pointers) 19.05.2025 Handout, Animated pointer.c
5 Interrupts, Synchronization, Power-Saving Modes, Exercise 4 26.05.2025 Handout, Animated
6 Timer, Exercise 5, Hands-On (Coffee Machine) 02.06.2025 Handout, Animated
7 No exercise 09.06.2025 Handout, Animated
8 Hands-on (Coffee Machine), Hands-On (Marquee) 16.06.2025 Handout, Animated
9 Linux Programming, Error Handling, Command-Line Arguments, Strings, Exercise 6, Buffer Overflow 23.06.2025 Handout, Animated
10 Filesystems, Exercise 7 30.06.2025 Handout, Animated
11 Processes, Exercise 8 (Part a)) 07.07.2025 Handout, Animated mish_vorlage.c
12 Signals, Exercise 8 (Part b) and c)) 14.07.2025 Handout, Animated
12 Exam Preparation 21.07.2025 Handout, Animated

Assignments

No. Title Abstract Start Days Teams Files to submit Points
1 blink Getting started, Implementation of a LED-Blink-Programm 28.04.2025 7 Nein blink.c 3
2 snake C Control Structures, Functions, SPiCboard-Components, Bitoperations 05.05.2025 7 Ja snake.c 12
3 led-modul Pointers, AVR I/O-Ports, Modules 12.05.2025 14 Ja led.c, led-test.c 14
4 spiel Interrupts, Power-Saving Modes, Concurrency, Synchronization, volatile 26.05.2025 14 Ja spiel.c 12
5 solar Interrupts, Power-Saving Modes, Concurrency, Synchronization, volatile 09.06.2025 14 Ja solar.c 15
6 concat C under Linux, Memory Allocations, Strings 23.06.2025 7 Nein concat.c 10
7 printdir POSIX, Structs 30.06.2025 7 Ja printdir.c 12
8 mish POSIX-Processes, Signals 07.07.2025 14 Ja mish.c 22

Additional assignments for practice

Title Files to implement
7seg 7seg.c
wuerfel wuerfel.c
zaehler zaehler.c
button button.c