Skip to main content

Trinity College Dublin, The University of Dublin

Menu Search

Module Descriptor School of Computer Science and Statistics

Module CodeCS7004
Module NameEmbedded Systems
Module Short TitleN/a
ECTS5 Credits
Semester TaughtMichaelmas Term
Contact HoursLecture hours: 21
Lab hours: 12
Tutorial hours: 0

Total hours: 33
Module PersonnelLecturing staff: Jonathan Dukes
Learning Outcomes

On successful completion of the module, students will be able to:

  • Describe the structure and operation of embedded systems, with particular emphasis on embedded system software, including embedded operating systems.
  • Evaluate and describe the requirements of an embedded system for a specific application.
  • Design, develop, test and evaluate small-scale embedded systems for a specific application using real-world hardware platforms (LPC2468 development board), programming tools (Keil ARM MDK) and systems software (FreeRTOS).
  • Describe the operation and make use of peripheral modules and devices, including, for example, interrupt controllers, serial communication devices, LCD and touchscreen controllers and analogue-to-digital converters.
  • Use appropriate literature, documentation and other resources to expand the knowledge that they can apply to the design, development and evaluation of embedded systems.
Learning Aims

The module will give students the opportunity to gain the knowledge and skills necessary to begin developing embedded systems software. Students taking the module will study a real embedded hardware platform in depth (based on the widely used ARM7TDMI microcontroller) and will use this platform in conjunction with industry-standard software tools to develop embedded systems of moderate complexity. Topics covered will be in the broad areas of computer architecture, systems software and I/O. Throughout the module, students will be given opportunities to consider issues of particular relevance in embedded systems design (e.g. development cost, power, performance and reliability).

The final four weeks of the module are devoted to practical project work, which is a core component of the module. Each stduent will engage in the design, development, testing and evaluation of a small-scale embedded system, putting into practice the knowledge gained in the module.

The module assumes that students have substantial prior programming experience and a basic knowledge of microprocessor systems and computer architecture.

Module Content

Computer Architecture

  • Microcontroller basics review
  • Memory mapped I/O
  • Exceptions and interrupts
  • Interrupt-driven application development

Systems Software

  • C Programming review; tools and techniques for embedded systems development
  • Operating systems for embedded systems
  • Task scheduling
  • Inter-process communication


  • Device interconnects (e.g. I2C)
  • A/D, D/A conversion


  • Case-studies
  • Reliability models
Recommended Reading List

Details of recommended texts, literature, documentation and other resources will be made available on the module website. (See

Module Prerequisites
Assessment Details

Assessment is by written examination (contributing 50% towards the overall mark) and practical project work (contributing 50% towards the overall mark).
Supplemental assessment is by examination only (100%).

Module Website
Academic Year of DataN/a