Module Overview


The aim of this module is to provide the learner with the knowledge, know-how and skill required in the implementation of microcontroller systems.

Module Code

MECH H2027

ECTS Credits


*Curricular information is subject to change


Overview of microcontrollers, their use and how they are employed. How simple microcontroller architectures are built and what the various elements do as well as their relevance in everyday interfacing examples. Interfacing external hardware to a microcontroller directly and using commonly used buses, e.g. SPI, I2C and One-wire. System design verification. Programming a Microcontroller system using C programming language.

Learning Progression

This module is structured around several Microcontroller based problems, whereby the problems increase in complexity as the students gain expertise in working with the Microcontroller hardware and software. It is expected the students will work on a minimum of 4 problems throughout the semester.

Problem Types

Typical problems will require the students to design and build a Microcontroller system for; Flashing LED, Driving an LCD Display, Reading Temperature sensors, driving an electric Fan/Motor and using common interface busses. Each problem will require students to build and program (using C) a Microcontroller system.

Team Work/Lab work

Where possible, students will work in small teams to design and build some of their microcontroller applications. This will mix with some more traditional labs where the interface problem is more demanding.

Current Lab Platform

The current lab platform is an Atmel ATMega328p microcontroller (Arduino Uno) programmed in Wiring Language (C code similar). A PIC platform could also be used.

Delivery is based on face to face lectures and weekly lab work.

Module Content & Assessment
Assessment Breakdown %
Formal Examination50
Other Assessment(s)35