Final Report of Embedded System Course 2013

Congratulations to all students of CSE3215 course for their great efforts and participations in all activities including mini-projects! Thanks to Excellent Teaching Assistants ( Navid Mohaghegh and Amir Rasouli ) for their great help to all students

Best Grade (Total):   Marcin Matynia  and Jonathan Lebon

Best Grade (Final Exam): Toni Kunic

Best Mini-Project #2: Marcin Matynia (   Marcin’s approach to this project was to breakdown the card matching game into its base components. That is to say, a RAM to store colour information, a VGA unit to display images to the player, and finally a main controller that takes both input from the player and feeds the corresponding output to the VGA unit)

Best Mini-Project #1:  Jonathan Lebon, Farhan Arshad, Ali Ismaeel, Vamshi Muniukunta (In this project, a colourmixing device was designed and implemented utilizing servo motors and light sensors to create a comprehensive system that automates the mixing process).










Embedded Systems ( Winter 2013)


Course Outline


CSE 3215 4.00 Winter 2013.

Department of Computer Science and Engineering.

Lassonde School of Engineering, York University

Toronto, Ontario, Canada


Instructor: Ebrahim Ghafar-Zadeh , LAS 1012D, e-mail:, Office hours: W 8:30-9:30.

Teaching Assistants (TAs): Navid Mohaghegh, Rasouli Amir Office hours: M(1-3pm) at LAS 1004A.

Class and Lab Locations: Lectures &Tutorials Classes meet at CB 120 and Lab Classes meet at LAS 1004A

Course overview and Outcomes:

Unlike a general-purpose computer, such as a personal computer, an embedded system is a special-purpose system in which the computer is completely encapsulated by the device it controls. The embedded system design consists of hardware, software, analog microelectronics, sensors and actuators which are combined for a specific application ranging from communications, to transportation, avionic and to medical instrumentation. Students will gain in-depth technical competence in the various areas including the design of hardware/software for embedded systems, the design of analog interfacing system along with the selection of appropriate sensors and actuators.



Students should have a good understanding of digital and analog electronics and computer organization. You should also be familiar with assembly programming (C programming will be helpful).

Lectures’ Topics and Course Calendar (tentative):


Lectures + Quizzes















Introduction (2)


Introduction (1)

Ch1 Ref. 1

Lab scheduling



H/S  Design 1 (General-Purpose Processors)


Continuation of L2+ T1

Ch3 Ref. 1

Lab 1 and Review of lab safety



H/S  Design 2 (Peripherals)


Q1+Continuation of L4+ T2

Ch4 Ref. 1

Lab 2 (Continuation of Lab 1)



H/S  Design 3 (Memory)


Q2+ Continuation of L6+ T3

Ch5 Ref. 1

Lab 3 (Deadline to submit the Lab #1 and 2 reports)



H/S  Design 4 (Interfacing and multitasking)


Q3+Continuation of L8+T4

Ch6 Ref. 1

Lab 4  (Deadline to submit the Lab #3 reports)



A/D Design 1 (Sensors ` Actuators)


Q4+Continuation of L10

Ch2 Ref. 2

Lab 5 (Mini-Project 1) ( Deadline to submit the Lab #4 reports)



No Lecture (Reading Week)




Lab 6 ( Deadline to submit the Lab #5 reports)



A/D Design 3 (ADCs and DACs)


Continuation of L12+T5

Ch2 Ref. 1

Lab 7 (Deadline to submit the Lab #6 reports)



CES Design 1 ( Design Technologies )


Q5+Continuation of L14+T6

Ch2 Ref. 1

Lab 8 (Deadline to submit the Lab #7 reports)





Q6+Continuation of L16+T7

Ch9 Ref. 1 & Ch4  Ref. 2

Lab 9 (Deadline to submit the Lab #8 reports)



CES Design 2 ( FSM, Concurrent process models) 


Q7+Continuation of L18+T8

Ch8 Ref. 1 & Ch5 Ref. 2

Lab 10 (Deadline to submit the Lab #9 reports)



IES Design 1 ( IC technologies and Design Technology)


Q8+Continuation of L20

Ch11 & Ch10 & Ref. 1

Lab 11(Mini  Project-2) ( Deadline to submit the Lab #10 reports)



Embedded System Design (Example 1) “ time permitting”


Continuation of L22

Ch7 Ref. 1

Lab 12 ( Continuation of Lab 11) ( Deadline to submit the Lab #11 and 12  reports will be the Final Exam date)

Ref.: Reference, Ch1: Chapter 1, A/D Analog Digital Design, CSE: Custom Embedded System, ADC: Analog to Digital Converter, DAC: Digital to Analog Converter,

H/S: Hardware and Software, ECS: Embedded Control System, IES: Integrated Embedded System, Q/A: Question and Answer, Q: Quiz,



Tutorials’ Topics:


Introduction to HCS12 MCU and Dragon 12 Development board
Introduction to MCU peripherals
How to use CodeWarrior
What is D-Bug12?
What is Serial Monitor? BDM?
Flashing MCU
How to read data-sheets and manuals


How to use PortA and PortB
How to use 7-segment LED display on Dragon12 board
How to use Keypad module of Dragon12 board
How to use Dragon12 LCD
How to use Debounce switches on Dragon12 board
How to use DIP switches on Dragon12 board
Integer operations
Floating point operations
What is soft floating point?


How to program interrupts in CodeWarrior for HCS12
Sample program using RTI
Sample program using SCI
Sample Program doing Motor control


PWM and Servo integration
ATD and Infrared Range Sensor integration
SCI and communication to Computer, Bluetooth or XBee Wireless module


Introduction to Quartus II programming environment
Design Tools in Quartus II, Schematic, Verilog and VHDL
Introduction to Qsim Simulation environment
Introduction to VHDL Programming
Design and implementation of Flip Flips
Design and implementation of Multiplexers


Introduction to FPGA (Altera DE2) Board
How to map Design on the Board
Upload and test design on board
Use of Seven Segments and LCD on DE2
Design and implementation of Counters (behavioral and structural)


Introduction to RAM
Design and implementation of RAM
How to Read and Write from/to RAM
Design and implementation of simple Calculator


Introduction to serial Communication
How to implement serial communication with PC
How to use PC to upload memory content
Put it altogether, implementation of a simple Battle ship game on DE2 FPGA board


The lecture class meets TW 16:00-17:30 EXCEPT the lectures (T5 to T4) meets Fridays 13:30-14:30 instead of Tuesdays 16:00-17:30. The students are recommended to visit prior to attend T1 -T4. We also recommend the students to read the presentations of T5-T7 before the class.


Labs’ Topics:

Lab 1

Introduction and how to use port A and B (keypad and 7-segment LED display of Dragon12 board)

Lab 2

Continuation of Lab 1

Lab 3

How to use LCD, DIP and Debounce Switches of Dragon12 board)

Lab 4

Real Time Interrupts. Combine Lab1 and 2 to create a fully functional calculator

Lab 5

PWM and SCI Communication

Lab 6

Mini  Project-1

Lab 7

Introduction to Altera DE2 board, Mapping design on hardware and use of seven segment displays and design of counter (behavioral and Structural models)

Lab 8

Introduction to RAM, design and implementation of simple calculator (using DE2)

Lab 9

Serial Communication  (using DE2)

Lab 10

Introduction to VHDL, Quartus II, Qsim Simulation tools and logic design including Flip-Flops and Multiplexer

Lab 11

Mini  Project-2

Lab 12

Continuation of Lab 11

Prior to starting the lab, the preparatory work must be completed by students and approved by TA. At the end of the lab session, the students should demonstrate their lab to the TA and electronically submit the final documentation (Codes and designs). All work submitted must be the student's own work. In the Labs 1-4 students use Dragon 12 and in the Lab 5-8 students learn how to design with FPGA using DE2.




% of final mark


Lab 1-8

32% (8x4 %mark each)

1%Preparatory work



1%Quality of Final Report

Mini Project 1-2

14% (2x7%mark each)

4% Design/Programming/Functionality

2% Presentation/Answer-to-Questions

1% Quality of Final Report. 

Quiz 1-8

16% (8x2% mark each)

Questions are from the lecture contents, assigned reading textbooks and Labs materials

Final Exam

38 %


  • *It should be mentioned that the students can ask several questions but should be autonomous in finding the final answer.
  • The main topic of Mini-Project 1 and 2 are “ Motor Control using Microcontroller “ and “


  1.  (Ref. 1) Frank Vahid and Tony Givargis, Embedded System Design: A Unified Hardware/Software Introduction, John Wiley & Sons, ISBN: 0471386782.
  2.  (Ref. 2) Thomas Bräunl: Embedded Robotics, 3rd Ed., Springer, ISBN: 9786611772901; 3540705333.

The first textbook is available in bookstore and the second textbook is available via

Other Useful Resources and Recommended References:

  1. CodeWarrior Development Tools and Microcontroller Data Sheets ( ).
  2. DE2 board (Altera)
  3. Embedded Systems: Design and Applications with the 68HC12 and HCS12 by Steven F Barrett and Daniel J Pack, Prentice Hall, 2004
  4. E. A. Lee and S. A. Seshia, Embedded Systems -- A Cyber-Physical Systems Approach,, 2011.
  5. GCC-HCS12







Last Update Jan. 15h, 2012.