
Software for Embedded Systems
Overview
Instructor |
Prof. Dr. rer. nat. Volker Turau
|
ECTS credit points | 6.0 |
Workload | 180 hours total |
Performance record | Written Exam |
Period | Is offered no more |
Language | English |
Description
Embedded systems are electronic computers that are embedded into another device in order to operate, control, or monitor it. They perform their task invisible for the end user, e.g., in cars, mobile phones, appliances, etc. Software development for these devices differs significantly from that of desktop or server applications. In contrast to software development for the latter, the developer is in general directly responsible for handling input and ouput. This lecture is intended to convey the basic concepts of a systematic software development for embedded systems in both theory and praxis. The practical part encompasses exercises with a 8-bit processor of the AVR family (ATmega 128RFA1). The lecture consists of the following chapters:
- Introduction
- General-Purpose Processors
- Programming the Atmel AVR
- Interrupts
- C for Embedded Systems
- Standard Single Purpose Processors: Peripherals
- Operating Systems for Embedded Systems
- Memory
- Finite-State Machines
- Real-Time Embedded Systems
Prerequisites
- Bachelor in Computer Science or Electrical Engineering
- C programming language
- Basic knowledge of software engineering
- Basic understanding of micro processors
Contents
- Introduction to embedded systems
- Software development for embedded systems
- Concurrent systems
- Real time
- Programming embedded systems
- Software design for embedded systems
- Software quality for embedded systems
Objectives
Knowledge
Basic Principles and procedures for the design of software for embedded systems
Expertise
Analysis of complex activities with temporal constraints
System expertise
Modularization of complex systems
Reading Resources
- F. Vahid and T. Givargis, Embedded System Design: A Unified Hardware/Software Introduction, John Wiley & Sons, 2002, ISBN: 978-0-471-38678-0
- M. Barr and A. Massa, Programming Embedded Systems: With C and GNU Development Tools, O'Reilly, 2nd ed. 2006, ISBN: 978-0-596-00983-0
- F. Bollow, H. Homann, K. Köhnm, C und C++ für Embedded Systems, MITP, 2009, ISBN: 978-3-8266-5949-2
- J. Ganssle, The Art of Designing Embedded Systems, Newnses, 2nd ed. 2008, ISBN: 978-0-7506-8644-0