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
  7. Dec 5. As discussed in class, a switched capacitor circuit can be used instead of an R2R ladder for implementing an n-bit DAC. During the "acquisition" period, a positive voltage is built across all of the capacitors, equal to the analog input voltage, and then the free terminals are driven to ground and the common terminal released, driving the common terminal to -V_in. The charge on the capacitors remains the same, as there is still a positive voltage bias across the capacitors. Next, the free terminal of the capacitor representing the MSB of the DAC is  connected to V_ref. Question: What is the resultant voltage on the common terminal? Explain your reasoning with words and equations. (Understanding SAR ADCs)

    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. Topics List


    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