ECE 341 - Microcontrollers Lab (Spring 2020)
As a result of the worldwide pandemic, the following modifications will be made.
- A final grade of 70% will be required to earn a grade of "Pass" if you take the course pass/fail. (not recommended!)
- Letter grades will still follow the normal A-90%, B-80%, etc.
- Grading of ECE 341 labs will change to 35% prelab, 65% submitted code. No report.
- Written material, such as homework and 341 prelabs should be
e-mailed as PDF attachments with appropriate filenames and subject
- MPLAB projects should be archived using MPLAB and then shared via OneDrive.
- Refresh your web browser and read your VandalMail frequently.
- Ask more questions than usual, particularly if you need assistance!
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 before the
start of the lab period. The pre-lab assignments are
designed to encourage you to have a development plan or strategy thought out
before you begin software development. 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
independently. Assignments submitted are to
be the work of each individual student. Any student who participates in
plagiarism will receive a zero for the entire assignment and be
reported to the Dean of Students.
Please read these additional guidelines for information on the lab report content, submitssion procedures, and other important information!!! Sample lab report
Lab grades are available through BBLearn. Lab weights are provided in the description of column "Weighted Total."
Lab 0 - Introduction to MPLAB and the Cerebot
MX7ck (required files). In-lab questions collected at the end of this lab. Lab report questions are due in lab the next week (Jan 28, 30). No pre-lab or formal report.
Lab 1 - Digital Input and Output with
the Cerebot MX7ck (required files). Lab report questions. See page 1 of General Lab Policies and Procedures for deadlines for this and all future labs. (but no CFD or DFD)
Lab 2 - Software Time Delay. Lab report questions (still no CFD or DFD)
- Lab 3 - Software-based Finite State Machines. Lab report questions (DFD and CFD required for this and remaining labs)
- Lab 4 - Timers and Multi-Rate Processing. Lab report questions
- Lab 5 - Process Speed Control using Interrupts. Lab report questions
- Lab 6 - Handshaking and LCD Control. Lab report questions.
- Lab 7 - Asynchronous Serial Communications. Lab report questions. Lab source code: comm.h and comm.c. E-mail prelab by March 25 (5 pm); share zip by Mar 31 (9 am)
- Lab 8 - I2C Serial Communications (2 weeks)
- Part I - No prelab. Develop a project to write and read single byte to the EEPROM and indicate comparison via LED. Will be treated as a ECE 340 homework. Share zip on OneDrive by Apr 4 (5 pm)
- Part II - Demo block write/read/verify. Share prelab (PDF) via OneDrive by April 6, 9 am. Share MPLAB archive by April 10, 5 pm.
- Lab 9 - Pulse Width Modulation using Output Compare. (2 week lab!) Prelab by April 14, 9 am. MPLAB archive by April 24, 5 pm.
- Lab 10 - Frequency Measurement using Input Capture. Prelab by April 27, 9 am. MPLAB archive by May 1, 5 pm.
MPLAB and PIC32 Resources
(single zip archive)