Module overview
Aims and Objectives
Learning Outcomes
Knowledge and Understanding
Having successfully completed this module, you will be able to demonstrate knowledge and understanding of:
- Key concepts of real-time systems
- Key concepts of operating systems
- The capabilities and peculiarities of embedded systems
- The hardware requirements implied by software functionality
Subject Specific Intellectual and Research Skills
Having successfully completed this module you will be able to:
- Build and debug applications running on a microcontroller
- Write system-level code
- Design algorithms for resource-constrained systems
- Implement software on an embedded system
- Implement simple operating system components
Syllabus
Programming embedded systems
- Debugging with limited I/O and memory
- Asynchronous & reentrant code
- Real-time programming
Input/Output
- Physical Interfaces
- Interrupts
- Drivers
Event-driven programming
- State machines
- Actors
Timing
- Hardware timer
- Watchdogs
Memory management
- Bootloader
- Stack vs. heap
- RAM vs. Flash
- Multiprogramming
Scheduling
- Pre-emptive multitasking
- Real-time scheduling
- Performance
Serial Communication
- UART, I2C/SPII, USB
File Systems
- Flash file systems
- FAT-FS
Embedded Applications
- Power consumption
- Reliability
Learning and Teaching
Teaching and learning methods
The content of this module is delivered through lectures, the module website, and directed reading.
Students work on their understanding through a combination of independent study and preparation for timetabled activities, along with formative assessments in the form of coursework assignments.
Students work on their practical skills and technical understanding in technical laboratories.
Type | Hours |
---|---|
Lecture | 36 |
Specialist Laboratory | 20 |
Wider reading or practice | 16 |
Preparation for scheduled sessions | 10 |
Revision | 12 |
Completion of assessment task | 38 |
Follow-up work | 18 |
Total study time | 150 |
Assessment
Assessment strategy
This module is assessed by a combination of coursework and a final assessment in the form of a written examination.
Summative
This is how we’ll formally assess what you have learned in this module.
Method | Percentage contribution |
---|---|
Examination | 60% |
Coursework | 40% |