1 x 120-minute lecture-1 weekly
1 x 60-minute lecture-2 weekly
1 x 120-minute practical weekly
Enrolment not permitted
ENGR2721 has been successfully completed
Assumed knowledge
Basic knowledge of digital electronics such as can be obtained in ENGR1201 Electronics or ENGR8703 Electronics GE.
Topic description

Structure of a microprocessor in general and a current microcontroller in particular, instructions set including move, arithmetic/logic, and program flow control, assembly language programming, basic arithmetic operations, working with BCD numbers, stack and its role, subroutines, looping, creating delays, look up tables and code conversion, indirect addressing and indexing, parallel ports, interfacing digital I/O, interfacing LCD, keypad, and 7-segments, timers and counters in microcontrollers, interrupts including priority, interfacing analog I/O using A/D and D/A, sampling, storing and displaying analog signals in a data acquisition system, interfacing external I/O ports and external memory.

Educational aims

This topic aims to introduce students to the principles of using microprocessors in digital systems. It describes the structure and instruction set of a current microcontroller and demonstrates various techniques for programming in assembly language. It also covers general Input/Output and basic interfacing techniques for microprocessors, and handling of analog signals and the use of timers and interrupts for various tasks. In the GE version of the topic, a deeper level of understanding, critical thinking and problem solving will be developed.

Expected learning outcomes
On completion of this topic you will be expected to be able to:

  1. Understand the structure and instruction set of a current microcontroller
  2. Write assembly language programs for microprocessors
  3. Interface general I/O and write control programs for them
  4. Debug their design both in hardware and software and make it work
  5. Use analog input /output and perform sampling and storing, and displaying of analog data
  6. Use timers and counters in microcontrollers for different applications
  7. Understand interrupts and be able to use multiple interrupts with priority in a system
  8. Better understand current research issues in microprocessor technology

Key dates and timetable

(1), (2)

Each class is numbered in brackets.
Where more than one class is offered, students normally attend only one.

Classes are held weekly unless otherwise indicated.


If you are enrolled for this topic, but all classes for one of the activities (eg tutorials) are full,
contact your College Office for assistance. Full classes frequently occur near the start of semester.

Students may still enrol in topics with full classes as more places will be made available as needed.

If this padlock appears next to an activity name (eg Lecture), then class registration is closed for this activity.

Class registration normally closes at the end of week 2 of each semester.

Classes in a stream are grouped so that the same students attend all classes in that stream.
Registration in the stream will result in registration in all classes.
  Unless otherwise advised, classes are not held during semester breaks or on public holidays.