![]() |
Programming Embedded Systems | |||
Overview
This page provides access to materials used at the University of Leicester to support the teaching of two core undergraduate modules in embedded systems (EG2065 and EG2066).
The materials are provided for use by students taking these modules. They may also be of interest to lecturers and students at other universities or colleges.
Note 1: If you are just looking for the notes or OHPs, please go to the bottom of this page.
Note 2: If you are looking for pictures of the MSc "intruder alarm" project (using Philips LPC2129 chips), you'll find them here. Note 3: If you are looking for "the MSc robot page" (using Atmel AT89C2051 chips) you'll find it here. Note 4: If you are looking for the user manual for the RapidiTTy tools (used in Semester 2 / PES II) you will find this on the TTE Systems site. Note 5: This is a "teaching" page. If you are interested in finding out about our research in this area you can do so here.PES I and PES II
This page provides information about two courses. The courses are referred to here as "Programming Embedded Systems I" (PES I, EG2065) and "Programming Embedded Systems II" (PES II, EG2066).
In each case, the course lasts for ten weeks (one university semester). At the University of Leicester, both PES I and PES II involve - every week - a one-hour seminar (or lecture), a related three-hour laboratory session, and a "surgery hour" (in which students come and ask questions).
We teach PES I immediately followed by PES II, over the course of an academic year (the second year of a three- / four-year programme). However, if you require only an introductory course, PES II could be dropped.
What topics do these courses cover?

PES I is an introductory course, for students who have previously programmed "desktop" computers but have little or no previous experience with embedded systems.
PES I covers the following topics:
Seminar 1: "Hello, Embedded World"
Seminar 2: Basic hardware foundations (resets, oscillators and port I/O)
Seminar 3: Reading Switches
Seminar 4: Adding Structure to Your Code
Seminar 5: Meeting Real-Time Constraints
Seminar 6: Creating an Embedded Operating System
Seminar 7: Multi-State Systems and Function Sequences
Seminar 8: Using the Serial Interface
Seminar 9: Case Study: Intruder Alarm System
Seminar 10: Case Study: Programming a Mobile Robot
PES II builds on PES I: it is mainly concerned with the design and implementation of systems containing more than one embedded processor.
PES II covers the following topics:
Seminar 1: A flexible scheduler for single-processor embedded systems (Part 1)
Seminar 2: A flexible scheduler for single-processor embedded systems (Part 2)
Seminar 3: Analogue I/O using ADCs and PWM
Seminar 4: A closer look at co-operative task scheduling (and some alternatives)
Seminar 5: Improving system reliability using watchdog timers
Seminar 6: Shared-clock schedulers for multi-processor systems
Seminar 7: Linking processors using RS-232 and RS-485 protocols
Seminar 8: Linking processors using the Controller Area Network (CAN) bus
Seminar 9: Applying "Proportional Integral Differential" (PID) control
Seminar 10: Case study: Automotive cruise control using PID and CAN
What hardware is used in these courses?
The courses use 8051 and ARM microcontrollers as the example platform.
No previous experience with microcontrollers (of any kind) is assumed at the start of PES I.
How much experience of programming is required
All of the programming in this course is in C.
Students taking PES I are assumed to have had previous programming experience (typically in Java or C++) on a "desktop" computer.
Students taking PES II are assumed to have completed PES I.
What programming tools are used?
In PES II, we use an 8051 compiler from Keil.
In PES II, we use the RapidiTTy tools from TTE Systems.
Note 1: There is a free copy of the RapidiTTy Tools available (RapidiTTy Lite). This includes the GCC compiler, IDE and debugger (but not the TTE Builder tool, or support for timing analysis). You can download RapidiTTy Lite this from the TTE Systems site.
Note 2: If you are looking for the user manual for the RapidiTTy tools, you will find this on the TTE Systems site.
What course texts are used?
Two books are used to support this teaching.
The main text in PES I is "Embedded C".
The main text in PES II is "Patterns for Time-Triggered Embedded Systems".
What materials are available for PES I?
Copies of the overhead projector slides (one slide per page) are available here (in PDF format, 2664 KB).
Copies of the lecture handouts (two slides per page) are available here (in PDF format, 2470 KB).
What materials are available for PES II?
Copies of the overhead projector slides (one slide per page) are available here (in PDF format, 2664 KB).
Copies of the lecture handouts (two slides per page) are available here (in PDF format, 2470 KB).
Last updated: 12 December 2007 06:37
Department of Engineering Web Maintainer
This document has been approved by the head of department or section.
If you are an authorised user you may
edit
this document through your Web browser.