CMPE 401 - Computer Interfacing
Department of Electrical and Computer Engineering
University of Alberta
Dr. Bruce F. Cockburn;
Office: ECERF W2-044;
Office: ECERF W2-054;
Electrical Stores Technician:
Office: ETLC E3-012;
Lab D1 and D2:Armita Kaboli
Lab D3 and D4:John Koob
Note that all email addresses are in the ece.ualberta.ca domain.
Lecture and Laboratory Sections:
Lec A1: Auto Reg.; Mondays, Wednesdays and Fridays 10:00 to 10:50 in ETLE2 002
Lab D1: Reg. No. 60646; Tuesdays 14:00 to 16:50 in ETLE5 002
Lab D2: Reg. No. 63960; Tuesdays 14:00 to 16:50 in ETLE5 002
Lab D3: Reg. No. 63500; Thursdays 14:00 to 16:50 in ETLE5 002
Lab D4: Reg. No. 63961; Thursdays 14:00 to 16:50 in ETLE5 002
Note: registering in one of the four laboratory sections will cause
automatic registration in the one lecture section.
Calendar Course Description:
(either term, 3-0-3/2).
The design and use of digital interfaces, including memory, serial,
parallel, synchronous and asynchronous interfaces.
Hardware implementations of interrupts, buses, input/output devices.
Prerequisite: EE 380 or CMPUT 229.
Required Textbook:Thomas L. Harman,
The Motorola MC68332 Microcontroller: Program Design, Assembly
Language Programming, and Interfacing,
(Prentice Hall, 1991, ISBN 0-13-603127-7).
Either of the following books will be useful references in the course. These texts were required for EE380 and can be used for this course as well.
68000 Family Assembly Language-W/3"Disk,
(ITP Nelson, ISBN 0534932754).
Midterm examination: 20% (Date: Monday, October 31; 50 minutes in the classroom starting
promptly at 10:00)
Final examination: 50% (Date and Location: Probably on Monday, December 19, starting at 9:00;
details to be confirmed later.)
Laboratory Exercises: 20%
Note: Students will work in teams of two in the laboratory.
Official Course Outline:
The order and relative emphasis of the topics may vary in the actual course.
Detailed Topic Sequence: (Order and topics subject to change)
Review of the 68332 microcontroller: registers, instructions,
addressing modes, the user & supervisor modes, interrupt handling
Embedded system software architecture: operating systems,
real-time kernels, device drivers, MicroC/OS-II
The RS-232 serial interface, the 68681 Dual Asynchronous Receiver
Transmitter (DUART) Interface Chip
Network interfaces: the OSI layered model, UDP/IP, TCP/IP,
client-server interaction, the socket API, the lwIP stack
Digital-to-analog and analog-to-digital conversion
Interfacing to sensors, actuators, stepper motors, servos,
the Motorola Time Processor Unit (TPU)
The 68000 System Bus: read cycles, write cycles, read-modify-write
cycles, IACK cycles, direct memory access (DMA)
High-speed digital signals, transission lines, termination methods
Survey of Other Illustrative Serial Interfaces: RS-422, Ethernet, SCI,
Survey of Microcomputer Interfaces: memory interfaces,
Intel microprocessor buses, ISA, EISA, PCI, cPCI, Rambus
Survey of Other Illustrative Parallel Interfaces: IEEE-1284 printer port,
IEEE-488 instrument bus, Unibus
Notes on the Schedule:
+ Demo date for section D2-lab #1 moved to Oct. 11 due to Thanksgiving.
* Report dates for section D4-lab #2 moved to Nov. 9th due to Remembrance Day.
! Lab period for section D4-lab #3 has been rescheduled due to Fall Break.
Students may also choose to attend another scheduled lab period. Due dates
continue to apply as per the schedule.
^ Demo due dates and report due dates coincide for lab #4 only.
Lab Download and Setup Instructions
A List of Useful MicroC/OS-II Functions
Datasheets for the New Micros NMIX-0332-OEM 68332-based Microcomputer
Schematics for the New Micros NMIX-0332-OEM 68332-based Microcomputer
An Introduction to the MC68331 and MC68332 (56-page tutorial)
MC68332 User's Manual (265 pages)
CPU32 Reference Manual (330 pages)
MC68HC681 DUART User's Manual (88 pages)
TPU Reference Manual (142 pages)
Lab libc documentation
Code of Student Behaviour:
It is the student's responsibility to be familiar with, and to adhere to,
the terms of the University of Alberta's
Included in the Code are descriptions of unacceptable behaviour for
students attending the University, the sanctions for the commission of academic
offences, and explanations of the complete discipline and appeal
In particular, please note the definitions
of plagiarism in section 30.3.2(1),
of cheating in section 30.3.2(2),
of misrepresentation of facts in section 30.3.6(4),
and of participation in an offence in section 30.3.6(5).
For example, cheating includes the submitting of the words, ideas,
images, or data (including computer programs) of another person as
the student's own in any academic writing, essay, thesis, research
project or assignment in a course or program of study.
Penalties for academic offences range from a written
reprimand up to expulsion from the University.
Supplementary Reference Materials:
Please do not feel obligated to buy copies of any of these books.
They are not required for the course, but you might find some of
these titles useful to supplement the lecture and laboratory material.
Limited numbers of the book on MicroC/OS-II by Jean Labrosse are available
in the University bookstore.
This book would be a useful reference for the laboratory exercises,
and might be useful later on for project courses.
Don Anderson and Dave Dzatko,
Universal Serial Bus System Architecture, 2nd ed.,
(Addison Wesley, 2001), ISBN 0-201-30975-0.
Behrouz A. Forouzan,
TCP/IP Protocol Suite,
(McGraw-Hill, 2003), ISBN 0-07-119962-4.
Jean J. Labrosse, MicroC/OS-II - The Real-Time Kernel,
2nd ed., (CMP Books, 2002), ISBN 1-57820-103-9.
Jane W. S. Liu, Real-Time Systems
(Prentice Hall, 2000), ISBN 0-13099651-3.
Hans-Peter Messmer, The Indispensable PC Hardware Book, 4th ed.,
(Addison Wesley, 2001), ISBN 0-201-59616-4.
Tom Shanley and Don Anderson,
PCI System Architecture, 4th ed.,
(Addison Wesley, 1999), ISBN 0-201-30974-2.
David E. Simon,
An Embedded Software Primer ,
(Addison Wesley, 1999), ISBN 0-201-61569-X.
Useful WWW Links:
Overview of Motorola's 32-bit Microcontroller Families
Motorola MC68332 User's Manual
Motorola MC68340 User's Manual
Home page of Micrium Inc.,
the distributor of MicroC/OS-II
and Technical Overview
Homepage of the
Lightweight TCP/IP (lwIP) Project
Homepage of the uIP project,
for small 8 and 16-bit microcomputers
A Tutorial Introduction to HPIB
Last Modified Dec 19, 2005