htw saar Piktogramm QR-encoded URL
Back to Main Page Choose Module Version:
emphasize objectives XML-Code


Microcontroller Systems

Module name (EN):
Name of module in study programme. It should be precise and clear.
Microcontroller Systems
Degree programme:
Study Programme with validity of corresponding study regulations containing this module.
Mechatronics and Sensor Technology, Bachelor, ASPO 01.10.2020
Module code: MST2.MCS
The exam administration creates a SAP-Submodule-No for every exam type in every module. The SAP-Submodule-No is equal for the same module in different study programs.
Hours per semester week / Teaching method:
The count of hours per week is a combination of lecture (V for German Vorlesung), exercise (U for Übung), practice (P) oder project (PA). For example a course of the form 2V+2U has 2 hours of lecture and 2 hours of exercise per week.
4SU (4 hours per week)
ECTS credits:
European Credit Transfer System. Points for successful completion of a course. Each ECTS point represents a workload of 30 hours.
Semester: 5
Mandatory course: yes
Language of instruction:
Project work

[updated 06.11.2020]
Applicability / Curricular relevance:
All study programs (with year of the version of study regulations) containing the course.

MST2.MCS (P231-0060) Mechatronics and Sensor Technology, Bachelor, ASPO 01.10.2019 , semester 5, mandatory course
MST2.MCS (P231-0060) Mechatronics and Sensor Technology, Bachelor, ASPO 01.10.2020 , semester 5, mandatory course
Workload of student for successfully completing the course. Each ECTS credit represents 30 working hours. These are the combined effort of face-to-face time, post-processing the subject of the lecture, exercises and preparation for the exam.

The total workload is distributed on the semester (01.04.-30.09. during the summer term, 01.10.-31.03. during the winter term).
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):
MST2.MIC Microprocessor Technology

[updated 05.01.2022]
Recommended as prerequisite for:

[updated 12.04.2021]
Module coordinator:
Prof. Dr.-Ing. Jürgen Schäfer
Lecturer: Prof. Dr.-Ing. Jürgen Schäfer

[updated 01.10.2020]
Learning outcomes:
After successfully completing this course, students will be able to explain the structure and operation of a microcontroller including the associated peripherals (USART, SPI, I2C, RTC, GPIO, timer) using a modern 32-bit RISC architecture. They will be familiar with methods for hardware abstraction for the hardware used, they will be able to recognize possible problems regarding software testing and maintenance in the design phase and be able to qualitatively evaluate different implementation variants.

[updated 06.11.2020]
Module content:
1. Software development tools
- Programming environment µVison ARM-IDE
- Key support programs
-- TortoiseSVN
-- Doxygen
2. Important design patterns
3. Concurrency
- Problems
- Possible solutions
-- Compare and swap
-- Load link/Store conditional
4. Hardware abstraction layers (HAL)
5. Practical applications (exemplary)
- Abstract implementation of a communication interface based on an interface for receiving and sending
-- Individual data bytes of a (serial) interface and
-- data packets
- Use of callback methods in connection with interrupts (inversion of control)
- Implementation of a consumer-producer model for data processing in mechatronic systems

[updated 06.11.2020]
Recommended or required reading:
Jospeh Yiu: "The Definite Guide to the ARM Cortex-M3", Newnes
Bruce P. Douglass: "Design Patterns for Embeddd 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
ST: "RM0008 Reference Manual",
ARM: "ARM Compiler toolchain, Compiler Reference",
ARM: "ARM Compiler toolchain, Usiong the Compiler",

[updated 06.11.2020]
[Thu May 23 04:12:02 CEST 2024, CKEY=m3MST2.MCS, BKEY=mst4, CID=MST2.MCS, LANGUAGE=en, DATE=23.05.2024]