MEng Electronic Engineering

Year of entry: 2021

Coronavirus information for applicants and offer-holders

We understand that prospective students and offer-holders may have concerns about the ongoing coronavirus outbreak. The University is following the advice from Universities UK, Public Health England and the Foreign and Commonwealth Office.

Read our latest coronavirus information

Course unit details:
Microcontroller Engineering II

Unit code EEEN20019
Credit rating 10
Unit level Level 2
Teaching period(s) Semester 1
Offered by Department of Electrical & Electronic Engineering
Available as a free choice unit? No


Brief Description of the Unit:

This unit will provide an overview of the use of microcontrollers in electronic products, and the type of peripheral devices used by the microcontroller to communicate with the rest of the system.

It includes some advanced topics in C/C++ programming including data structures for embedded systems and accessing memory-mapped peripheral interfaces from C/C++ programs.

A detailed study of a number of the peripheral devices available on the STM32 family of devices is also provided, with the set of devices chosen to be representative of those commonly used in embedded systems. Below are some examples of such devices:

  • Digital input/output facilities
  • Analogue-to-digital converters
  • Counter/timers
  • Serial (asynchronous and synchronous) communications interfaces.
  • Polled and interrupt-driven transfer

The module also covers some common design patterns in embedded systems including:

  • State machines
  • Dataflow
  • Time-driven



Unit title Unit code Requirement type Description
Microcontroller Engineering I EEEN10018 Pre-Requisite Compulsory
Electronics Project EEEN10034 Pre-Requisite Compulsory


This course unit detail provides the framework for delivery in 2020/21 and may be subject to change due to any additional Covid-19 impact.  Please see Blackboard / course unit related emails for any further updates.

This course unit aims to:

Provide an understanding of the operation, programming and application of the standard peripheral interfaces found on modern microcontrollers used in embedded systems. 

Learning outcomes

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




Explain how hardware elements are manipulated by high level language programs.




Describe the operation of devices such as analogue-to-digital converters, timers, counters and serial peripheral devices.




Describe how interrupts are generated and processed, and the benefits of interrupt-driven data transfer.




Identify typical design patterns found in embedded software, and where they can be applied.




Design and code solutions common to embedded systems programming problems involving I/O pins, analogue-to-digital converters, timers, serial interfaces etc.




Formulate and test hypotheses through iterative software development.




Teaching and learning methods

  • Didactic lectures
  • Problem based learning
  • Laboratory based learning


Assessment methods

Method Weight
Written exam 80%
Written assignment (inc essay) 20%

Study hours

Scheduled activity hours
Lectures 20
Practical classes & workshops 12
Independent study hours
Independent study 68

Teaching staff

Staff member Role
Liam Marsh Unit coordinator

Return to course details