Module Overview

Microcontroller Applications

This module will build on knowledge of microprocessor systems gained in the Microprocessor 1 module. The module is design to enable learners develop skills in implementing microprocessor based solutions to engineering problems.

Module Code

ELTC H2017

ECTS Credits

5

*Curricular information is subject to change

Review to AVR Microcontrollers

AVR microcontroller history and features. Microcontrollers and embedded processors. Overview of AVR family of processors.

AVR Architecture

Harvard Vs Von Neumann architectures. RISC Vs CISC architectures. General purpose registers in the AVR. The AVR data memory. AVR Status Register. Program Counter and program ROM space in the AVR. Interrupt handling and circuitry. AVR port structure. ADC system.

AVR Assembly Language Programming

Introduction to AVR assembly programming. Flowcharts and pseudo-code. Assembling an AVR program. Branch instructions and looping. Call instructions, subroutines and stack usage. Assembler directives. Addressing modes. Look-up tables.

Programming for microprocessors in C

Data types and time delays in C. Logic operations in C. Data conversion programs in C. Data serialization in C. Memory allocation in C.

Microprocessor Interfacing, interrupt and timer programming

I/O port programming in AVR. I/O bit manipulation programming. I/O programming in C. Data serialization. AVR timer and counter programming. AVR timer interrupts. Programming external hardware interrupts. AVR serial port programming.

Case studies of microprocessor applications

Alarm systems. Process control. Keyboard control. LCD controller

Debugging and troubleshooting microprocessor systems

System design issues. Processor simulator. System emulation. Symbolic debugging. JTAG.

The module will be delivered through a series of lectures and lab sessions with student self-directed learning including assessment activities.

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