ECE 340/341 Microcontrollers and Lab (Fall 2014)


All assignments are collected at the start of class on the specified due date. Each assignment should have your name, the course number, the date, and the assignment designation (e.g., HW1, etc.). Attendance is mandatory. Students who miss five or more class periods will receive a final grade of F for the course. (Arriving late or leaving early is considered absent.)

Course Description

The primary goal of this course is to give you the fundamental skills needed to understand, use, and design microcontroller-based systems. This includes the following: (1) What is a microcontroller? (2) What can it do (and not do)? (3) How does one design (and program) a microcontroller-based system? Note: In addition to the listed prerequisites, ECE 340/341 required junior-level standing in EE or CompE. (e.g., You must have passed both Digital Logic and Circuits II with a C or better.)


Programming 32-bit Microcontrollers in C, Lucio Di Jasio, 2008. ISBN: 978-0-7506-8709-6

Reading Assignments

Please complete the reading assignments in a timely manner so that you may contribute in the class discussions. The following abbreviations are used below, with # identifying the chapter or section: LD - Day # from the class text by Lucio Di Jasio; FRM - PIC32 Family Reference Manual (separate PDF file per section); DS - PIC32MX Datasheet (single PDF file); PLIB - PIC32 Peripheral Library Guide; MX - MPLAB X User Guide ; and XC - XC32 Compiler User Guide.

Homework and Quizzes (20%)

There will be approximately 50 points worth of homework and quizzes, possibly unannounced, throughout the semester. These will be used to ensure that students are keeping up with the reading, the lectures, and the lab.

  1. Aug 29. 
  2. Sep 5
  3. Sep 17. HW3
  4. Sep 29. Assume Timer 1 is clocked by the peripheral bus clock (10 MHz) with a prescale value of 256. (1) What value should be written to PR1 in order to achieve a 1 ms delay? (2) If we use this configuration to delay for 100 ms, how much time will actually have elapsed?
  5. Oct 1. (a)  Why can't an ISR accept arguments as inputs and return a value? (b) What question(s) do you have regarding interrupts after Jim's introduction?
  6. Nov 3. I2C homework

    Exams (80%)

    Each exam is worth 100 points and will be closed book, closed notes. Semester exams are 50 minutes long; the final exam will be two hours long and comprehensive. Please bring paper, calculator, pencil(s) and eraser to the exam.

    1. Sep 19. Topics List
    2. Oct 17. Topics List
    3. Nov 14. Topics List
    4. Final Exam. Mon, Dec 15, 10 am - noon.


    Grades (and other information) will be distributed electronically to student UI e-mail addresses periodically throughout the semester. Grades will be calculated using the traditional scale (90%=A, 80%=B, etc.).

    Reference Material