Embedded Systems: Course Description
Embedded Systems: Course Description
Course Description
Embedded systems are involved in almost every function of modern life. All modern
luxury equipment like Digital Cameras, Mobile Phones, GPS Devices, Cars, Bikes,
Televisions, DVD Players, Video Games and consoles, Answering Machines,
Microwave Ovens, Network Routers, Photocopy Machines, Music Synthesizers, Mobile
Phones, Planes, Spacecraft, and Boats represent some of the devices that utilize
Embedded Systems.
The tremendous number of applications for embedded computing has given rise to high
demand for engineers with experience in designing and implementing embedded
systems. This course is an introductory level capstone course in embedded systems
and their design using PIC and AVR microcontrollers. The students work their way from
the basic architectural understanding of embedded systems and programming of PIC18
series microcontrollers in Assembly and C language. The interfacing and control of
different input/output devices is included in the later stages of the course, along with
working on Arduino development board. The design projects in Lab augment the
theoretical learning and provide hands-on experience in development of embedded
systems.
University of Engineering and Technology, Lahore Spring 2019
Course Outline
The course has been divided into four modules. For an easier understanding the
modules are kept as independent from one-another as possible. While the basic
structure of the course will follow the outline as mentioned, the contents may vary
slightly as decided by the instructor.
▪ Microcontroller architecture
▪ Introduction to Assembly programming for PIC18
▪ Branch, Call, and Time delay Loops
▪ Arithmetic, Logic Instructions and Programs
▪ Table processing and Bank switching
▪ Hardware connections, configuration bits and ROM loaders
▪ ADC and PWM programming
c2 CLO1 Explain the general architecture of microcontrollers along with their PLO1
programming framework.
c3 CLO2 Program basic functions in microcontrollers. PLO1
c3 CLO3 Interface multiple sensors and actuators with the microcontrollers. PLO3
c4 CLO4 Design basic embedded systems using microcontrollers giving due PLO3
consideration to energy-awareness, safety and reliability.
c3 CLO5 Apply basic motor control techniques for mechatronic applications. PLO1
Lab CLOs
p4 CLO6 Design and implement application specific embedded system in a group PLO9
project.
p4 CLO7 Design and fabricate single and dual-sided PCBs for embedded system PLO5
implementation, using software tools (e.g. EaglePCB Design, Proteus
etc.)
Prerequisites
▪ MCT-212: Digital Logic Design
▪ MCT-143: Computer Programming- I
Suggested Text
Owing to a wide scope of course contents, multiple books are consulted, as under. The
course material may also suggest some additional text from time to time.
Text Books:
Reference Books:
▪ Tim Wilmshurst, ‘Designing Embedded Systems,with PIC Microcontrollers’,
2nd Edition. Newnes
▪ E. A. Lee and S. A. Seshia, ‘Introduction to Embedded Systems - A Cyber-
Physical Systems Approach’, Edition 1.5
▪ John Peatman, ‘Embedded Design with PIC18f452’.
University of Engineering and Technology, Lahore Spring 2019
Online Resources:
▪ http://www.microchip.com/
▪ http://arduino.cc/
The lecture notes and assignments will be uploaded on the following link:
▪ https://groups.yahoo.com/neo/groups/MCE_2016/
Lab Work
The course is designed as a hands-on learning experience, where the students will be
introduced to hardware based tasks along with simulations to implement the theoretical
concepts. The lab is aimed at complementing the learning process in the theory
lectures, as well as enabling the students to program and use PIC microcontroller, and
Arduino Board for their projects, and as a general data acquisition device. The Lab will
utilize the MPLab IDE, its assembly and C language for programming for PIC, and the
Arduino IDE / Processing for programming Arduino. The programs will be simulated and
tested using Proteus ISIS™.
The semester projects are designed to increase the understanding, design and
implementation of embedded systems. The students will be required to complete three
projects during the semester. The design and manufacturing of Printed Circuit Boards
will also be discussed. To enhance the learning process, the students are encouraged
to design and implemented their projects using PCBs.
Lab Schedule
Lab Title Details
#
1 Introduction: o Introduction about the lab
General Lab Rules o Getting the students familiar with the equipment present in the
and Work Safety lab and discussing about work safety (working with voltages,
component shielding)
2 Introduction to o The students will learn about using Proteus as a design and
Proteus Design simulation tool for electronic circuits.
3 Introduction to PCB o Single and Dual sided PCB design will be learned and a basic
Design design of PIC18F452 microcontroller PCB will be implemented.
4 Introduction to o Introduction to PIC18F452/PIC18F4550 and its peripherals
MPLAB 18F452 o Learn about MPLab IDE (interface and basics)
5 I.O control using o Implement the basic starting circuit for the
PIC18F452 PIC18F452/PIC18F4550.
o Write a code for manipulating I/O ports.
University of Engineering and Technology, Lahore Spring 2019
14 Arduino and o Use MATLAB and MS Excel to visualize the saved data.
MATLAB: Data o Use MATLAB to program Arduino in MATLAB environment
Visualization using Arduino support package for MATLAB
17 GUI with MATLAB o Use MatLab’s GUIDE tool to generate Graphical User Interface.
o Use Arduino with MatLab through a GUI.
University of Engineering and Technology, Lahore Spring 2019
Grading Policy
This is a 3 + 1 credit hour course
Theory Lab
Class Participation 10% Lab Evaluations 30%
Quizzes 20% Projects 50%
Mid-Sem. Exam 30% Viva 20%
End-Sem. Exam 40%