Author: Authorized Gateway Customer
Last saved by: Douglas F. De Boer

Dordt College Engineering Department
EGR 304, Embedded Microcomputer Systems
(Formerly, “Microprocessor Interfacing”)
Spring Semester, 2008

2007-08
Catalog
Data:

EGR 304  Embedded Microcomputer Systems (4 credit hours)  A course on the design of microcontroller-based systems and the associated software and hardware.  Software issues such as modular design, interrupt driving I/O, and design for reliability are covered.  Hardware issues such as serial and parallel interfacing, bus structures, grounding and shielding, and D/A and A/D conversions are also studied.  Lab exercises provide design experience using a particular microcontroller or soft processor core in an FPGA.  Prerequisites: Engineering 204, 220, Computer Science 110 or 111 or by permission of the instructor.

Textbooks:

Valvano, Jonathan W., Embedded Microcomputer Systems:  Real Time Interfacing, 2nd Edition, 
Thomson Engineering, 2006.  ISBN 0-534-55162-9

References:

Raj Shah, Microprocessor Design Made Easy Using the MC68HC11, Advanced Microcomputer Systems Inc., Pompano Beach, Florida, 2000.
Motorola, M68HC11 Reference Manual, Revision 6, 4/2002
Motorola, MC68HC11E Family Technical Data, John B. Peatman, Design with Microcontrollers, McGraw-Hill Book Company, 1988.
John B. Peatman, Design with PIC Microcontrollers, Prentice-Hall Book Company, 1998.
Sedra and Smith, Microelectronic Circuits, Oxford
William Stallings, Data and Computer Communications
Harold S. Stone, Microcomputer Interfacing, 
Circuit Cellar Magazine and Circuit Cellar Online (http://www.circuitcellar.com)

Instructor: | Douglas De Boer

Goals:

Creational Structure:  Students will design a system that uses an embedded processor.  The design will incorporate polled or interrupt driven input/output and a sensor to measure a physical quantity such as temperature, pressure, etc.  This is a primary goal of this course.
Contemporary Response:  Students will consider the application of norms for the design of appropriate ergonomics for an I/O interface.
Creational Development:  Students will study the historical development of some standards, such as for serial interfacing, and reflect on how these past developments now influence modern trends in computer engineering.

Prerequisites by topic: | Linear circuit analysis, elementary electronics, and digital logic circuits.  Some experience with microprocessors is assumed but proficiency is not assumed.
Laboratory: | One or two design projects will be completed, each with a formal written report.  Design projects may be proposed by the students but must be approved in advance by the instructor.  Some laboratory time may be used to present project management and presentation techniques.  Grounds for lab project approval are based on the scope of the project and the relation of the project to the lecture material in class.  Depending on the scope of the project work undertaken, there usually will also be a number of short lab exercises with informal reports graded as homework.
Computer use: | A cross assembler or compiler will be used to support the microprocessor or microcontroller used in the lab, or else a language such as C or tiny basic may be used, as appropriate to the projects selected by the students.  Students are encouraged (but not required) to use programs such as Mathcad or Matlab for homework solutions where appropriate.
courses@dordt | This course makes use of Dordt’s course management system, courses@dordt.  To logon, the URL is http://courses.dordt.edu.  Use your Dordt College Novell account user ID and password.

Means of 
Evaluation:

Homework (10%), Two Tests (20% each) Laboratory Project(s) (26%), Final Exam (24%)

Dordt College Engineering Department
EGR 304, Embedded Microcomputer Systems
(Formerly, “Microprocessor Interfacing”)
Course Outline
Spring Semester, 2008

Dates

Class  (Timing is approximate.  Adjustments are usually needed to facilitate lab work, etc.)

Laboratory 
(Example Schedule)

Week of 1/15, 17

Ch. 1, Introduction:  MC68HC11 Architecture
Ch. 2, Assembly Language Programming:

Initial Set-up of 68HC11 and software installation.

Week of 1/22, 24

Ch. 2, Assembly Language Programming
C language programming.

Basic digital I/O,
reading and writing bits

Week of 1/29, 31 | Ch. 3, Interfacing Methods | Timers

Week of 2/5, 7

Ch. 4, Interrupt handling techniques
(some content not in the text)

Interrupts

Week of 2/12, 14 | Ch. 6, Timing—measurements and scheduled events via dedicated hardware and tic clocks. (some content not in text) | Project I (4 weeks)

Week of 2/19, 21

Ch. 7. Serial Interfacing—
RS-232 and similar schemes, I^2C (Ch 14)
Test #1, Thursday 2/21

Week of 2/26, 28

Serial Interfacing—Ethernet (not in text)
and CAN (Ch 14)

Week of 3/4, 3/6 | Serial Interfacing—USB (not in the text) |

Week of 3/11, 13
(no class 3/18, 20, spring break)

Ch. 8, Parallel interfaces

(no lab on 3/14 or
3/21, Spring Break)

Week of 3/25-27 | Ch. 9, Memory Interfacing | Project II (5 weeks)

Week of 4/4
(no class 4/1, assessment day)

Ch 11, Analog Interfacing—analog amplifiers filters needed for interfacing

Week of 4/8, 10 | Ch 11, Analog Interfacing— filters needed for interfacing |

Week of 4/15, 17

Ch. 11, Analog interfacing, analog to digital conversion and vice-versa 
Test #2, Tuesday 4/15

Week of 4/22, 24

Position encoding and stepper motor theory 
(not in text)

Week of 4/29, 5/1 | Project presentations, review | (possible short lab)

Week of Exams

Final Exam, 
Monday 5/5, 3:30 –  5:30 PM

The class schedule may vary by up to two weeks to accommodate student interests and abilities.  The lab is intended to be mostly open-ended and project oriented.  This implies that content may also be added to or deleted from the course as needed to accommodate this flexibility.