ECE 341 - Microcontrollers Lab (Fall 2014)
The laboratory exercises are closely coordinated with the lectures presented
in ECE 340. Successive assignments build on previous lab experiences. Most
labs have a pre-lab assignment that must be submitted at the
start of the lab period. The pre-lab assignments are
designed to motivate you to have a development plan or strategy thought out
before you commence coding the program. This allows the most efficient use
of the time spent with the instructors in the lab. Attendance is
mandatory for the entire lab period or until a fully
functional program is demonstrated to the instructor or Lab TA. Labs must
be completed in sequence and no lab can be started until all previous labs
have been completed. Students must work
A completed lab consists of the following:
Pre-lab report (if specified)
Demonstration of a fully functional program that meets the requirements of
the assignment. Must obtain instructor or TA signature.
A written report addressing the issues and / or questions identified in the
lab assignment, including any supporing material (screenshots, graphs, etc.)
Any other deliverables specifically requested (e.g., source code).
Lab grades are assigned based upon the following scale: A = 90-100%, B =
80-89%, C= 70-79%, D=60-69%, F= below 60%
Lab periods start at the time published in the UI time schedule. Students
who arrive late will lose 5% for that lab.
Pre-lab reports are collected at the start of the lab.
Labs reports are due at the start of the next meeting of your lab section,
unless otherwise specified on the lab web page.
Assignments submitted are to be the work of each individual student. All
Students who participate in plagiarism will receive a zero for the entire
lab assignment. Acts of plagiarism will be promptly report to the Dean of Students
Lab 0 - Introduction to MPLAB and the Cerebot
MX7ck (required files). Lab report due in class on Mon, Sep 8.
Lab 1 - Digital Input and Output with
the Cerebot MX7ck (required files). Lab report due
in class on Mon, Sep 15.
Lab 2 - Software Time Delay. Draft
of code collected at the start of lab. Demo both methods by 4 pm, Fri, Sep 19. Project Report file.
Report due in class on Mon, Sep 22.
- Lab 3 - Software FSM (and Stepper Motors). E-mail a PDF of a DFD of the project top module and a CFD of Task 5 before your lab section. Must demo by 4 pm, Fri, Sep 26. Project report file. Lab report due in class on Mon, Sep 29.
- Lab 4 - Multi-rate processing using
Timer 1. PDFs of the following sent via e-mail before the start of lab: DFD of project software and CFDs of system_init(), main(), and
Timer1_delay(). Demo by 4 pm on Oct 3. Report due in class on Monday, Oct 6, and a PDF of project4.c sent via e-mail.
Project report file.
- Lab 5 - Process control using interrupts.
Demo by 4 pm on Oct 10. Report due in class the week of Oct 13. Project report file.
- Lab 6
- Handshaking and the LCD. Demo by 4 pm on Oct 17. Report due in class
the week of Oct 20, along with an electronic PDF of your LCDlib.h and
LCDlib.c files via e-mail. Project report file.
- Lab 7 - Asynchronous Serial
Communications. (Alert! Looks like a long one - yowza.)
(Communication files). Report due in class the week of Oct 27. Project report file.
- Lab 8 - I2C Serial Communications. I2C Triggering and Decode.
Demo single byte write/read/verify by 4 pm on Fri, Oct 31. Bring two
screen captures to class on Mon, Nov 3 instead of a report, and e-mail a PDF of your program. Demo block write/read/verify by
4 pm on Fri, Nov 7. Bring report to class on Mon, Nov 10. Project report file.
- Lab 9 - Pulse Width Modulation using Output Compare. Demo by 4 pm on Fri, Nov 21. Bring report to class on Mon, Dec 1. Project report file.
- Lab 10 - Frequency Measurement using Input Capture. Demo by 4 pm on Fri, Dec 5. Bring report to class on Mon, Dec 8. Project report file.
MPLAB and PIC32 Resources
(single zip archive)