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:
- The hardware requirements implied by software functionality
- Key concepts of operating systems
- Key concepts of real-time systems
- The capabilities and peculiarities of embedded systems
Subject Specific Intellectual and Research Skills
Having successfully completed this module you will be able to:
- Design algorithms for resource-constrained systems
- Implement simple operating system components
- Write system-level code
- Implement software on an embedded system
- Build and debug applications running on a microcontroller
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 |
---|---|
Follow-up work | 18 |
Specialist Laboratory | 20 |
Lecture | 36 |
Revision | 12 |
Wider reading or practice | 16 |
Completion of assessment task | 38 |
Preparation for scheduled sessions | 10 |
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% |