ENGS 28 Embedded Systems
Small computers have been embedded in engineered systems, such as automobiles, for a few decades. With the growth of such application areas as the Internet of Things (IoT) and advanced driver assistance systems (ADAS), embedded systems are becoming yet another fundamental tool for engineering design. The purpose of this course is to introduce embedded systems to students at an early stage in their engineering education, with minimal prerequisites. Many students have been exposed to the potential of embedded systems at the hobby or maker level through robotics and the boards such as the popular Arduino and are excited to go farther. Other students see programming for the first time in introductory computing courses and want to do more. This course offers a path into important physical applications of computing in engineering, equipping you with skills you can use throughout your project work at Thayer School. Engs 28 will introduce you to a variety of physical sensors and actuators, and how to connect them to a microcontroller. Our development platform is an Arm-based STM32 Nucleo-64 board, and we will teach you to program its STM32C031C6 microcontroller with the industry-standard ANSI C language rather than making use of this board’s Arduino compatibility or using the STM32 Hardware Abstraction Layer library. This will give you a stronger understanding of how a microcontroller works and skills that will transfer to more complex processors later. Students interested in pursuing embedded systems after this course can go on to courses in digital and analog electronics (Engs 31 and 32), software design (Engs/CoSc 50), microprocessors (Engs 62), and mechatronics (Engs 147).
Instructor
P. Taylor