0% found this document useful (0 votes)
3 views

Course Outline- Embedded Systems

The Embedded Systems course (BSD 3209) for undergraduates focuses on the design and implementation of computer systems integrated into hardware, covering topics like microcontroller programming, interfacing, and real-time systems. Students will gain hands-on experience and theoretical knowledge, culminating in a capstone project. Assessment includes assignments, a capstone project, class participation, and an exam.

Uploaded by

Gabriel Gitonga
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

Course Outline- Embedded Systems

The Embedded Systems course (BSD 3209) for undergraduates focuses on the design and implementation of computer systems integrated into hardware, covering topics like microcontroller programming, interfacing, and real-time systems. Students will gain hands-on experience and theoretical knowledge, culminating in a capstone project. Assessment includes assignments, a capstone project, class participation, and an exam.

Uploaded by

Gabriel Gitonga
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Course Outline: Embedded Systems

Unit Code: BSD 3209


Level: Undergraduate

Prerequisites: Basic knowledge of programming, computer architecture, and


electronics.

Course Description
Embedded Systems is a course that introduces students to the design and
implementation of computer systems integrated into hardware for specific functions.
The course covers topics such as microcontroller programming, interfacing hardware
components, real-time systems, and embedded software development. It balances
theoretical concepts with practical, hands-on experience.

Learning Outcomes
By the end of the course, students will be able to:
1. Understand the architecture and operation of embedded systems.
2. Program microcontrollers and design embedded software for specific
applications.
3. Interface embedded systems with sensors, actuators, and other peripherals.
4. Analyze and optimize real-time embedded systems for performance.
5. Apply embedded systems knowledge to solve real-world problems.

Week-by-Week Course Content


Week 1: Introduction to Embedded Systems
• Topics:
o Definition and characteristics of embedded systems.
o DiOerences between embedded and general-purpose systems.
o Examples of embedded systems in daily life (e.g., automotive, IoT,
healthcare).
• Activities: Case studies of embedded systems in industry.
• Readings:
o Wolf, W. (2012). Computers as Components: Principles of Embedded
Computing System Design. Chapters 1-2.

Week 2: Microcontrollers and Microprocessors


• Topics:
o Overview of microcontroller architecture (e.g., ARM, AVR, PIC).
o Key components: CPU, memory, timers, and I/O ports.
o Choosing the right microcontroller for an application.
• Activities: Exploring datasheets and specifications of popular microcontrollers.
• Readings:
o Mazidi, M. A., & Mazidi, J. G. (2018). The AVR Microcontroller and
Embedded Systems Using Assembly and C. Chapters 1-2.

Week 3: Programming for Embedded Systems


• Topics:
o Basics of C/C++ programming for embedded systems.
o Embedded programming tools (IDEs, compilers, and debuggers).
o Introduction to assembly language for low-level control.
• Activities: Writing basic programs for LED blinking and serial communication.
• Readings:
o Barrett, S. F., & Pack, D. J. (2012). Embedded Systems: Introduction to
Arm Cortex-M Microcontrollers. Chapters 3-4.

Week 4: Sensors and Actuators


• Topics:
o Types of sensors (temperature, pressure, proximity, etc.).
o Actuator interfacing (motors, relays, and servos).
o Signal conditioning and analog-to-digital conversion.
• Activities: Building a sensor-actuator system (e.g., temperature-controlled fan).
• Readings:
o Dogan Ibrahim, (2013). Microcontroller Projects in C for the 8051. Chapter
5.

Week 5: Interfacing and Communication Protocols


• Topics:
o GPIO, UART, I2C, SPI, and CAN communication.
o Wireless communication (Bluetooth, Wi-Fi, Zigbee).
o Interfacing embedded systems with external devices.
• Activities: Implementing UART-based communication between two
microcontrollers.
• Readings:
o Wolf, W. (2012). Computers as Components. Chapter 6.

Week 6: Real-Time Operating Systems (RTOS)


• Topics:
o Concepts of real-time systems.
o Multitasking and task scheduling.
o Introduction to FreeRTOS and its applications.
• Activities: Setting up and running tasks using FreeRTOS.
• Readings:
o Labrosse, J. J. (2010). MicroC/OS-II: The Real-Time Kernel. Chapters 1-3.

Week 7: Power Management in Embedded Systems


• Topics:
o Low-power design techniques.
o Sleep modes and power-saving strategies in microcontrollers.
o Energy-eOicient embedded system design.
• Activities: Implementing low-power modes in a microcontroller.
• Readings:
o Kamal, R. (2017). Embedded Systems: Architecture, Programming, and
Design. Chapter 9.
Week 8: Embedded System Design Methodologies
• Topics:
o Top-down and bottom-up design approaches.
o Hardware-software co-design principles.
o Debugging and testing embedded systems.
• Activities: Design and test an embedded system project (e.g., home
automation).
• Readings:
o Wolf, W. (2012). Computers as Components. Chapter 7.

Week 9: IoT and Embedded Systems


• Topics:
o The role of embedded systems in IoT.
o IoT architecture and protocols.
o Data acquisition and cloud integration.
• Activities: Building a simple IoT application using an ESP32 microcontroller.
• Readings:
o Thakur, D., & Kulkarni, B. (2017). Internet of Things (IoT) for Beginners.
Chapters 2-3.

Week 10: Security in Embedded Systems


• Topics:
o Security challenges in embedded systems.
o Encryption and authentication techniques.
o Protecting embedded devices from cyber threats.
• Activities: Implementing basic encryption for communication between devices.
• Readings:
o Wolf, M. (2017). Embedded Systems Security. Chapters 4-5.

Week 11: Advanced Topics and Trends


• Topics:
o Advanced microcontrollers (ARM Cortex-M series, RISC-V).
o Edge computing and AI in embedded systems.
o Emerging trends in embedded systems.
• Activities: Case study discussions on AI-powered embedded systems.
• Readings:
o Siewert, S. (2019). Real-Time Embedded Components and Systems.
Chapters 8-9.

Week 12: Capstone Project and Course Review


• Activities:
o Final presentation of student projects.
o Review and Q&A session to recap key concepts.
• Deliverable: Capstone project report and demonstration.
• [Teams – hardware - ]

Assessment Criteria
• Assignments (15%): Weekly exercises, labs on embedded programming and
interfacing. [1,2,,,,,,9] – 5,5,10,15,15,50 - Top,5, 4 +0 =5
• Capstone Project (30%): A practical project demonstrating embedded system
design.
• Class Participation (5%): Engagement in class discussions and lab sessions.
• Exam (50%): Comprehensive evaluation of theoretical concepts.

References
1. Wolf, W. (2012). Computers as Components: Principles of Embedded Computing
System Design. Morgan Kaufmann.
2. Barrett, S. F., & Pack, D. J. (2012). Embedded Systems: Introduction to Arm
Cortex-M Microcontrollers. Morgan & Claypool.
3. Kamal, R. (2017). Embedded Systems: Architecture, Programming, and Design.
McGraw-Hill.
4. Mazidi, M. A., & Mazidi, J. G. (2018). The AVR Microcontroller and Embedded
Systems Using Assembly and C. Pearson.
5. Labrosse, J. J. (2010). MicroC/OS-II: The Real-Time Kernel. CRC Press.

You might also like