- Prospective Students
- Current Students
- About Us
The goal of this course is to provide students with an understanding of the inner workings of embedded system solutions and the underlining technology, which include the development of circuits and embedded software programs. It exposes students to the structure and component of embedded controllers and the tools necessary for the development of embedded systems solutions. Students will also be exposed to the design and implementation processes of embedded system solutions. In addition students will develop the skills necessary to construct circuits and design algorithms to interface devices such as modem, GPS receivers, LCD and other input/output devices with a microcontroller based embedded system.
The learning experience is enhanced with computer-based exercises and assignments. The assignments will include: (1) a take home problem solving questions design to test student understanding of the theory; and (2) a report in the form of an IEEE paper structure on a survey of the state-of-the-art in embedded systems designs. The intent is to expose the student to high level technical publications
Embedded Systems Overview: Introduction and Background; An Embedded System; Processor in the Embedded System; Other Hardware Units; Exemplary Embedded Systems; Embedded System-On-Chip (SOC) and in VLSI Circuits
Microcontroller Overview: Basic Layout; Components; Memory and Register; Instruction Set; The AVR 8-Bits Microcontrollers.
Assembly Programming & Simulation:Assembly Language Structure; Branch, Call and time delay loops; AVR Studio: Editor, Assembler, Simulator, Debugger and Hex Programmer; Simulation of Written Code; STK500 Hardware: Description and Operation; Actual Microcontroller Programming.
Digital & Analog Capabilities: Digital Input/Output Capabilities; Configuration and Operation of I/O Ports; Digital I/O Port Programming; Analog Input/Output Capabilities; Configuration and Operation of I/O Pins/Ports; Analog-to-Digital Conversion; Analog Peripheral Programming
Interrupt Subsystem: Introduction to concept of Interrupts; Configuration and Operation of Interrupts Sources; External and Internal Interrupts Capabilities; Interrupts Control Flow; Interrupt Vectors and Vector Table; Programming
Timing Subsystem: Introduction to timer/counters; 8/16-Bits Timers; Configuration and Operation of Timers; Timers Modes of Operation - Counter, Input Capture, Output Compare and Pulse Width Modulation; Watch Dog Timer; Timer Programming
Serial Communication Subsystem: Parallel vs. Serial Communication; UART and USART; Operation and Configuration; Serial Communication Protocol: Framing, Parity, etc.; RS232 Serial Ports Layout (DB25 and DB9); RS232 Standard; Line Drivers; Serial Programming
C Language for Embedded Systems: Introduction to Embedded C; C Language vs. Assembly Language; Introduction to the WinAVR C Compiler; C Structure; Pre-processor Commands; C Types, Operators and Expression; C Control Flow (For, While, If/Else, Switch, etc. Control Structure; Function and Program Structure.
Operating Parameters & Interfacing: Operating Parameters; Interfacing Input Devices, Switches including de-bounce circuit, Keypad and Keypad Drivers, etc.; Keypad Programming; Interfacing Output Devices, LCD, LED, etc.; LCD Interface Programming; Motor Control, DC Motors, Stepper Motors and Their Drivers, Servo Motors and Their Drivers; Motor Control Programming; Isolators, Optical and Other Isolators; Power Supply and Regulation, Oscillators and Clocks; Interfacing GPS Receivers; GPS NEMA Standard; Interface GSM Modems; Modems’ AT Commands.
Design & Development: Design Plans (Project Specifications, etc.; Sourcing and Selection of Controllers and Components; Designing Circuits; Flowcharts and Programs; Implementation and Packaging; Documentation.
Communication Technology: Introduction to IrDA; Introduction to USB; USB Packets; USB Physical Interface; Implementing USB Interface
One 2-hour theory final exam paper – 60%
Mid Semester exam - 20%
At the end of this course students should be able to: