An introduction to embedded systems including hardware and software considerations for special-purpose computing applications that interact with the physical world. Topics include system development methodologies and modelling diagrams, an overview of related hardware such as embedded processor architectures, microcontrollers and related logic, an overview of software issues including scheduling and real-time systems, introduction to the Internet of Things (IoT), and basic I/O interfacing concepts for sensors and actuators. Includes discussions of social and ethical issues arising from embedded systems such as security, privacy, reliability and impact of automation. Lectures will be combined with hands-on lab exercises.
Prerequisites: Computer Science 112 (which may be taken concurrently) and Engineering 204 or 220, or permission of the instructor.
Instructor: Prof. Derek Schuurman