Wireless Embedded Systems

CSE190 A00 - Fall 2022

Lectures are M/W/F from 10:00am to 10:50am in EBU3B (CSE) 2154
The instructor is Aaron Schulman (aka Aaron Shalev). Office hours: M/W from 11:00am to 12:00am in 3219.
The tutor is Alexandre Nguyen. Office hours: TODO in 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% - Four 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

  • Coming soon

Lectures

Day Topic Preparation for class
Week 0: Course introduction
Fri Sept 22 Introduction Lecture 1 Slides
Week 1: Introduction to emdedded systems
Mon Sept 26 MCUs (video on Piazza due to holiday) ARM Cortex M for Beginners (pdf)
Lecture 2 Slides
Wed Sept 28 MCUs (cont) Lecture 3 Slides
Fri Sept 30 I/O Overview Lecture 4 Slides
Week 2: How to develop code for embedded systems
Mon Oct 3 Development Environment Schematics, and Datasheets (In class demo recorded on Piazza)
Wed Oct 5 Using Pointers, Headers, and Registers, and GPIO (cont.) Lecture 5 Slides
Fri Oct 7 Time Lecture 6 Slides
Week 3: Time and Interrupts
Mon Oct 10 Time Lecture 7 Slides
Wed Oct 12 Time and Interrupts Lecture 8 Slides
Fri Oct 14 Debuging Lecture 9 Slides
Week 4: Serial inter-device communication
Mon Oct 17 Serial busses Lecture 10 Slides
Wed Oct 19 Serial busses (cont.) Lecture 11 Slides
Fri Oct 21 Serial busses (cont.) Lecture 12 Slides
Week 5: Serial inter-device communication and peripherals
Mon Oct 24 Serial busses (cont.) Lecture 13 Slides
Wed Oct 26 Intro to peripherals - Accelerometer Lecture 14 Slides
Fri Oct 28 Debugging busses using a logic analyzer In class demo (and reviewing I2C interface for accel in datasheet)
Week 6: Midterm Exam
Mon Oct 31 Midterm Review Session Lecture 15 Slides
Wed Nov 2 Midterm Exam
Fri Nov 4 Direct Memory Access Lecture 16 Slides
Week 7: Efficiency (of code and microcontrollers)
Mon Nov 7 Coding style discussion
Wed Nov 9 Power consumption Lecture 17 Slides
Fri Nov 11 Veterans Day No Lecture
Week 8: Wireless Communication
Mon Nov 14 Power (cont.) and Intro to Wireless Lecture 18 Slides
Wed Nov 16 Wireless Lecture 19 Slides
Fri Nov 18 Wireless Lecture 19 Slides (cont.)
Week 9: Wireless Communication
Mon Nov 21 Wireless Lecture 20 Slides
Final exam
Fri Dec 9 Final (8:00am - 11:00am)