MEng Mechatronic Engineering with Industrial Experience

Year of entry: 2024

Course unit details:
Microcontroller Engineering II

Course unit fact file
Unit code EEEN20011
Credit rating 10
Unit level Level 2
Teaching period(s) Semester 1
Available as a free choice unit? No

Overview

Brief Description of the Unit:

This unit will provide an overview of the use of microcontrollers in electronic products, and the types 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
  • Time-driven

Pre/co-requisites

Unit title Unit code Requirement type Description
Microcontroller Engineering I EEEN10202 Pre-Requisite Compulsory
Electronics Project EEEN10141 Pre-Requisite Compulsory

Aims

This course unit aims to: Provide an understanding of the operation, programming and application of modern microcontrollers and standard on-chip peripheral devices found within them.

Learning outcomes

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

ILO1 - Explain how hardware elements are manipulated by high level language programs. [Developed] [Assessed]

ILO2 - Describe the operation of devices such as analogue-to-digital converters, timers, counters and serial peripheral devices. [Developed] [Assessed]

ILO3 - Describe how interrupts are generated and processed, and the benefits of interrupt-driven data transfer. [Developed] [Assessed]

ILO4 - Identify typical design patterns found in embedded software, and where they can be applied. [Developed] [Assessed]

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

ILO6 - Formulate and test hypotheses through iterative software development. [Developed]

Teaching and learning methods

  • Didactic lectures
  • Problem based learning
  • Laboratory based learning

Assessment methods

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

Feedback methods

.

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