SHE Level 3
SCQF Credit Points 20.00
ECTS Credit Points 10.00
Module Code M3H623544
Module Leader Mario Mata
School School of Computing, Engineering and Built Environment
Subject Electronic Engineering
  • A (September start)

Pre-Requisite Knowledge

Software Development for Engineers or equivalent Digital Programmable Systems 1 or equivalent

Summary of Content

An aim of the module is to allow students to develop the key software implementation skills required when developing embedded system based solutions requiring programmable systems. The module will use cover the key aspects of programmable systems including processors and related peripheral modules commonly available within modern Microcontrollers. The module will also cover the business, ethical and sustainable issues associated with the development of embedded system solutions, such as the requirement to minimise power consumption within designs. Coupled with the theoretical aspects of the topic the students will explore within the laboratory appropriate implementation strategies to implement solutions to design problems using embedded programmable systems.


The teaching syllabus will cover the following areas: Review of Numerical Representations and Binary Arithmetic Number systems, binary, hexadecimal, fixed and floating point Microcontroller Architecture: Von Neumann and Harvard Architectures, MSP430, architecture topology, address space, central processing unit, (MSP430 CPU), direct memory access, low power modes Memory Systems: Introduction to memory devices - ROM/RAM/FLASH, combining memory, memory maps, full address decoding, partial address decoding Assembly: MSP430 instructions set, single operand instructions, double operand, jump instructions and program flow, emulated instructions, simple assembly programming, addressing modes Interrupts: Interrupt handling process, interrupt vector table, priority, maskable and non maskable, MSP430 stack, subroutines, saving Registers, recursive subroutines Timer Systems: MSP430 clock systems of MSP430, watchdog clock, basic timer, real-time clock, input capture, output compare, pulse duty cycle, pulse width modulation, motor control using PWM Analogue to Digital and Digital to Analogue Conversion: Sampling, quantisation, encoding, comparator, successive approximation converter, ADC/DAC register configuration, circular buffering Implementation: Low level embedded C, peripheral interfacing, I/O, Watchdog, timers, ADC, multiplier, LCD, DMA, Low Power Modes

Learning Outcomes

On completion of this module the student should be able to:Describe and compare the operation of typical Von Neumann and Harvard architectures Detail the addressing and decoding of memory and peripherals within a memory mapped address spaceUnderstand the relationship between assembly language and the binary representation of processor instructionsAnalyse trade-offs between alternative implementations of a designImplement and debug systems using combined hardware and software solutions

Teaching / Learning Strategy

The University 'Strategy for Learning' documentation has informed the learning and teaching strategy for this module. The course material will be introduced through lectures and practical exercises based on lecture material will be applied during lab and tutorial sessions. Tutorials will be used to explain and elaborate on the lecture material. Where appropriate advantage will be taken of online video explanations of concepts within the module. The laboratory work will provide the student with support to develop their embedded programming and debugging skills. This will be supplemented with real world examples of where the specific components contained within the lab exercises are used within real world designs. These exercises have been specifically engineered to map to industrial requirements for embedded systems developers, skilled in both hardware and software. This summative assessment of these technical skills will be in a final project. Full use will be made of GCU Learn to provide Lecture-based and related study materials, along with sample solutions of Tutorial and Laboratory exercises, thus encouraging the development of independent learning and allowing self-reflective feedback on student performance. Staff-based feedback on student performance for submitted work will be provided in line with the University feedback policy, with summative feedback and grades on the coursework assessment utilising GCU Learn. The additional interactive discussion features of GCU Learn will be utilised, as appropriate to the module, to stimulate independent and flexible student learning outwith scheduled class time.

Indicative Reading

Both the learned and the popular literature on Microcontrollers and Digital Systems will be used as a source of information for private study. The titles and electronic resources below are to be considered as indicative only. -360 1. MSP430 Microcontroller Basics; John H. Davies, 2008 2. Microcontroller Programming and Interfacing Texas Instruments MSP430; Steven F. Barrett, Daniel J. Pack, 2011

Transferrable Skills

Specialist knowledge and application. Critical thinking and problem solving. Critical analysis. Communication skills, written, oral and listening. Numeracy. Computer literacy. Creativity, innovation & independent thinking. Knowledge of international affairs. Reliability, integrity, honesty and ethical awareness Entrepreneurial, independence and risk-taking. Commercial awareness

Module Structure

Activity Total Hours
Independent Learning (PT) 132.00
Lectures (PT) 24.00
Assessment (PT) 20.00
Practicals (FT) 24.00
Assessment (FT) 20.00
Tutorials (PT) 12.00
Tutorials (FT) 12.00
Independent Learning (FT) 120.00
Practicals (PT) 12.00
Lectures (FT) 24.00

Assessment Methods

Component Duration Weighting Threshold Description
Exam (Exams Office) 2.00 50.00 35% Exam linked to Learning Outcomes
Coursework 1 n/a 25.00 35% Practical
Coursework 2 n/a 25.00 35% Practical