htw saar Piktogramm
Back to Main Page

Choose Module Version:


Embedded Systems

Module name (EN): Embedded Systems
Degree programme: Computer Science and Communication Systems, Bachelor, ASPO 01.10.2017
Module code: KIB-ES
Hours per semester week / Teaching method: 2SU+2PA (4 hours per week)
ECTS credits: 5
Semester: 4
Mandatory course: yes
Language of instruction:

[still undocumented]
Applicability / Curricular relevance:
KIB-ES Computer Science and Communication Systems, Bachelor, ASPO 01.10.2017, semester 4, mandatory course
60 class hours (= 45 clock hours) over a 15-week period.
The total student study time is 150 hours (equivalent to 5 ECTS credits).
There are therefore 105 hours available for class preparation and follow-up work and exam preparation.
Recommended prerequisites (modules):
Recommended as prerequisite for:
Module coordinator:
Prof. Dr.-Ing. Jürgen Schäfer
Lecturer: Prof. Dr.-Ing. Jürgen Schäfer

[updated 27.09.2016]
Learning outcomes:
Proficiency: After successfully completing this module, students will be proficient in the following: structure of components of embedded systems, system-on-chip, special features of embedded system programming (cross-compiler, programming, debugging; GPIO, ADC, DAC, SPI, I2C, USART interfaces; interrupts and exceptions)
Skills: Furthermore, students will be capable of working with a development tool for embedded systems, working with the documentation of a modern RISC microcontroller and configuring GPIOs, USART interfaces and timers, as well as creating interrupts.
Programs, debugging embedded systems.
Competencies: Students will also be able to program microcontroller-based embedded systems with limited resources under real-time conditions without an operating system. They will be able to implement simple hardware abstraction layers and realize simple controls using state machines. Students will be able to detect possible race conditions.

[updated 26.02.2018]
Module content:
 1. Software development tools
- Programming environment µVison (MDK-ARM)
-- Project settings
-- Compilers, linkers
-- Debugging
2. Microcontrollers
- Architecture
- Interrupts
3. Concurrency
- Problems
- Possible solutions
4. Hardware abstraction layers (HAL)
5. Practical applications
- IO pins: Input and output
- Abstract implementation of a communication interface based on an interface for receiving and sending
data via an asynchronous (USART) and synchronous (SPI or I2C) serial interface.
- Use of callback methods in connection with interrupts (inversion of control)
- Time control via timer, PWM generation and analysis

[updated 26.02.2018]
Recommended or required reading:
Jospeh Yiu: "The Definite Guide to the ARM Cortex-M3", Newnes
Bruce P. Douglass: "Design Patterns for Embedded Systems in C", Newnes
Daniel W. Lewis: "Fundamentals of Embedded Software with the ARM Cortex-M3", Pearson International Ed.
Thomas Eißenlöffel: "Embedded-Software entwickeln", dpunkt.verlag
J. A. Langbridge: Professional Embedded ARM Development, John Wiley & Sons, 2014
W. Hohl: "ARM Assembly Language - Fundamentals and Techniques", CRC Press, 2009
ST: "RM0008 Reference Manual",
ARM: "ARM Compiler toolchain, Compiler Reference",
ARM: "ARM Compiler toolchain, Using the Compiler",

[updated 26.02.2018]
Module offered in:
SS 2021, SS 2020, SS 2019
[Wed Dec  8 01:07:21 CET 2021, CKEY=kes, BKEY=ki2, CID=KIB-ES, LANGUAGE=en, DATE=08.12.2021]