CSE 466: Software for Embedded Systems
Autumn 2012

Syllabus

Course Description

The course focuses on software issues in embedded systems.

Using an advanced 16-bit microcontroller (the TI MSP430) and its development environment, we will explore interrupt programming and management, wired and wireless data communication, as well as peripheral interfacing. We will discuss scheduling and real-time systems.

Laboratory assignments will use prototyping boards, LEDs, audio transducers, A/D converters, pulse-width modulators, and wireless communication. The final project will be programming a blimp that can function autonomously or under tele-operation. In addition to an MSP430, the blimp includes a more powerful Arm-based application processor that runs Linux.

Time permitting, the course will introduce relevant concepts from signal processing and communication, and other embedded algorithms, meaning algorithms that are useful or necessary on constrained processors without floating point support. Algorithms that may be covered include: CRC, discrete FFT, and CORDIC.

Grading Policy

Labs

There will be weekly labs, completed in small groups. Group assignments may change throughout the quarter. The labs make up the most significant portion of the course work.

Homework

There may be occasional homework assignments or in-class exercises.

Exams

The final project takes the place of an exam.

Class participation

Students are expected to attend lecture and participate in in-class and online discussion.

Ratios:

  • Labs: 50%
  • Final project: 30%
  • Homework, class participation, and in-class exercises: 20%

Academic accommodations

If you would like to request academic accommodations due to a disability, please contact Disabled Student Services, 448 Schmitz, 206-543-8924 (V/TTY). They will give you a letter requesting academic accommodations, and we will make every effort to provide the accommodations you might need for class.