Embedded Software Development
Alapadatok
Course coordinator
deputy head of department, associate professor
Szoba: IE330
Tel.:
+36 1 463-3587 Email: orosz (*) mit * bme * hu |
Lecturers
assistant lecturer
Szoba: IE423
Tel.:
+36 1 463-2673 Email: krebesz (*) mit * bme * hu |
Announcements
Introduction
The primary aim of the subject is to introduce the students to the topics of embedded software development.
The following main topics are introduced:
- Basics of C programming in embedded systems, properties of cross compilers, steps and requirements of compiling. Handling of memory-mapped peripherals and related standardization processes (e.g., CMSIS-Core)
- Hardware abstraction layers from low-level hardware libraries, firmware libraries to board and application-level libraries. Coding rules: commenting, naming conventions, restriction of language usage (MISRA-C), standards and examples. Coding examples for DMA-based (Direct Memory Access) hardware handling, porting of LibC library.
- Operating modes of an embedded software with special emphasis on diagnostic and energy saving modes.
- Debugging process in embedded systems, tracing and debugging tools in modern embedded systems.
- Software architectures like simple round-robin scheduling, function queues, embedded operating systems (OS). Basic problems and solutions of parallel programming are presented in theory and in practice through FreeRTOS examples: creating threads, using shared resources, synchronization of threads, stack usage, timing, scheduling and other OS features.