Embedded Software Development

Course coordinator

A munkatárs fényképe
deputy head of department, associate professor
Szoba: IE330
Tel.:
+36 1 463-3587
Email: orosz (*) mit * bme * hu

Lecturers

A munkatárs fényképe
mesteroktató
Szoba: IE331
Tel.:
+36 1 463-3583
Email: naszaly (*) mit * bme * hu
A munkatárs fényképe
deputy head of department, associate professor
Szoba: IE330
Tel.:
+36 1 463-3587
Email: orosz (*) mit * bme * hu
A munkatárs fényképe
mesteroktató
Szoba: IE336
Tel.:
+36 1 463-2066
Email: scherer (*) mit * bme * hu

Announcements

Syndicate content

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.

© 2010-2024 BME MIT