Wireless Embedded Systems

CSE190 D00 - Winter 2020

Lectures are Tu/Th from 11:00am to 12:20pm in EBU3B (CSE) 4140.
The instructor is Aaron Schulman (aka Aaron Shalev). Office hours: Tu/Th from 1:30pm to 2:30pm in CSE 3120.
The teaching assistant is Sneh Shah. Office hours: M/W/F 9am-12:00pm EBU3B (CSE) 3219

Wireless embedded systems bridge our physical world with powerful digital control systems and cloud data analytics. Applications range from medical devices such as Bluetooth-enabled blood glucose meters, to payment systems such as Near-Field Communication-based credit cards. In this class, students will learn about how an embedded system works from the ground up. The lectures will focus on the key enabling components of embedded systems, including: Clocks, GPIO, Interrupts, Busses, Amplifiers, Regulators, Power supplies, ADC/DAC, DMA, Storage, and Wireless communication. The goal of the class is to familiarize the students with these components so that they feel comfortable working on a team that is building a device that incorporates a wireless embedded system.

Prerequisites

CSE30 (CSE 120 recommended)

Materials

Reading

We will be supplementing the lectures with material from the following freely available sources:

Course management

We will manage discussions, grading, and announcements for this course with Piazza.

Grading Criteria and Late Policy

  • 20% - Midterm Exam
  • 60% - Five assignments
  • 20% - Final Exam
The late policy for the course is as follows: you are permitted three total days that you can submit any of the projects late. For example, you can be late one day (24 hours) on three of the projects, or late three days on one project.

Academic Integrity Guidelines

All programming assignments must be completed in your assigned groups. You and/or your partner must write all solutions and code that you submit, excepting any code that was provided to you as part of the assignment. You may discuss the assignments with others, but you may NOT make your code available to others or copy answers or code from another student--this includes GitHub repostiories (or similar) for assignments from this or similar courses in previous terms at any university. You will be issued private GitHub repositories for use in this course; it is your responsibility to make sure your code stays private. Exams will be individual effort and closed book.

Projects

Lectures

Day Topic Preparation for class
Week 1: Introduction to emdedded systems
Tue Jan 7 Introduction Lecture 1 Slides (ppt)
Th Jan 9 MCUs Lecture 2 Slides (ppt)
ARM Cortex M for Beginners (pdf)
Week 2: IO and Time
Tue Jan 14 Finishing GPIO (demo) and Time Lecture 3 Slides (ppt) (continued)
Thu Jan 16 Finishing Time and Interrupts Lecture 4 Slides (ppt)
Week 3: Serial communication
Tue Jan 21 Debugging and Serial busses Lecture 5 Slides (ppt)
Thu Jan 23 UART and SPI Lecture 6 Slides (ppt)
Week 4: Serial communication between the MCU and peripherals
Tue Jan 28 SPI and I2C Lecture 7 Slides (ppt)
Thu Jan 30 DMA Lecture 8 Slides (ppt)
Week 5: Midterm Exam
Tue Feb 4 Midterm Review Session
Thu Feb 6 Midterm exam
Week 6: Power management
Tue Feb 11 Class canceled (Aaron Sick)
Thu Feb 13 Power management Lecture 9 Slides (ppt)