UTAustinX: Embedded Systems - Shape The World: Multi-Threaded Interfacing

UTAustinX: Embedded Systems - Shape The World: Multi-Threaded Interfacing

by The University of Texas at Austin

Embedded Systems Design Course

Course Description

Welcome to this exciting and hands-on course on embedded systems design! This comprehensive program is the second part of a two-part sequence that will immerse you in the world of electronic gadgets and real-time systems. You'll dive deep into the fascinating realm of interrupts, exploring their application in creating a diverse range of systems including audio players, data acquisition systems, control systems, and interactive games.

What Students Will Learn

  • Mastery of embedded systems design using modular design and abstraction principles
  • Advanced C programming skills, focusing on both functionality and style
  • Circuit building and testing with various components like switches, LEDs, resistors, potentiometers, and liquid crystal displays
  • Synchronization of hardware and software I/O with various devices
  • Implementation of I/O drivers and multi-threaded programming using interrupts
  • Debugging techniques using oscilloscopes, logic analyzers, and software instrumentation
  • Data sheet interpretation skills
  • Construction of smart objects and integration with the Internet of Things (IoT)

Prerequisites

  • Prior completion of a computer programming course in any language, with exposure to variables, arithmetic, logic, loops, and functions
  • High school physics course covering current, voltage, resistance, and power
  • Knowledge from part 1 of the course sequence, including LED/switch interfacing, I/O port programming, finite state machines, microcontroller debugging, and C programming

Course Coverage

  • UART serial interface and I/O synchronization
  • Interrupt-based system design
  • Digital-to-Analog Conversion (DAC) and sound generation
  • Analog-to-Digital Conversion (ADC) and data acquisition
  • Systems approach to game design
  • Wireless communication and IoT integration

Target Audience

This intermediate-level course is ideal for computer science and engineering students, electronics enthusiasts, and professionals looking to enhance their skills in embedded systems design. It's perfect for those who have completed part 1 of the sequence or have equivalent knowledge and are eager to apply their skills to real-world projects.

Real-World Applications

The skills acquired in this course have numerous real-world applications. Graduates can:

  • Develop consumer electronics and smart devices
  • Create innovative IoT solutions for home automation and industrial applications
  • Design and implement control systems for various industries
  • Contribute to the development of medical devices and equipment
  • Innovate in the field of automotive electronics and infotainment systems
  • Create interactive installations for museums, exhibitions, or public spaces
  • Develop custom embedded solutions for specific business needs

Syllabus

Module 1: Welcome and introduction to course and staff
Module 11: UART - The Serial Interface, I/O Synchronization

Lab 11: Write C functions for decimal and fixed-point number output to serial port

Module 12: Interrupts

Lab 12: Design and test a guitar tuner (440 Hz tone)

Module 13: DAC and Sound

Lab 13: Design and test a digital piano (4 inputs, DAC, sound)

Module 14: ADC and Data Acquisition

Lab 14: Design and test a position measurement system (ADC, calibrated output)

Module 15: Systems Approach to Game Design

Lab 15: Design and test a hand-held video game (integration of previous labs)

Module 16: Wireless Communication and the Internet of Things

Lab 16: Connect CC3100 booster pack to LaunchPad, communicate with access point, fetch weather data, and send data to class server

This course offers a unique blend of theoretical knowledge and practical application, ensuring that students are well-prepared to tackle real-world embedded systems challenges upon completion.

Similar Courses
Course Page   UTAustinX: Embedded Systems - Shape The World: Multi-Threaded Interfacing