ELE 2610 - Embedded Systems

3 lecture hours 2 lab hours 4 credits
Course Description
This course introduces students to programming and design of microprocessor-based systems. Concepts covered include microprocessor architecture, serial and parallel I/O, ADCs, Timers, interrupts, and interfacing of hardware components and sensors within an embedded system design. The target system is used for development of both software and hardware. In addition to weekly labs, students will develop a semester long project targeted at an autonomous embedded system. 
Prereq: ELE 2001  and (ELE 1601  or ELE 2801 ) (quarter system prereq: EE 1910 or equivalent, EE 2050)
Note: None
This course meets the following Raider Core CLO Requirement: Integrate Learning
Course Learning Outcomes
Upon successful completion of this course, the student will be able to:
  • Explain how a microprocessor and a microcontroller work
  • Write structured programs targeted at embedded systems
  • Interpret timing diagrams and machine cycles
  • Interface hardware components such as switches, keypads, and LEDs to the microcontroller
  • Develop interrupt driven programs
  • Develop programs that use the subsystems of a microcontroller
  • Interpret and apply a standard communication protocol in an embedded system design
  • Diagnose software and hardware problems
  • Develop a complex autonomous embedded system
  • Write reports documenting design processes, decisions, and results

Prerequisites by Topic
  • Procedural programming concepts in C
  • Number systems, basic binary arithmetic, Boolean algebra

Course Topics
  • Elementary computer operations, architecture of a typical Harvard microprocessor/microcontroller
  • Addressing modes, instruction set, C language programming including functions 
  • Timing, machine cycles, and states 
  • Parallel input/output, programmed I/O, and interrupt I/O 
  • Timer systems and I/O
  • A/D and D/A conversion
  • Serial communication
  • Power management and sleep modes
  • System component interaction and planning
  • System support circuits
  • Introduction to RTOS 

Laboratory Topics
  • Program development involving internal registers and bit manipulation
  • Laboratory assignments to develop interrupt programming skills
  • Laboratory assignments to develop microprocessor interfacing techniques to simple I/O devices and sensors
  • Design projects to interface the microcontroller to complex I/O devices and sensors. 
  • Semester long project to develop an autonomous embedded system
  • Each project requires a demonstration of the working hardware and software plus a design report

Coordinator
Dr. Kerry Widder


Print-Friendly Page (opens a new window)