Course Syllabus

CP316: Microprocessor II - Course Syllabus
Department of Physics and Computer Science
Faculty of Science
Waterloo Campus
Winter 2018
 
Instructor Information: Mr. Terry Sturtevant
E-mail: [tsturtevant@wlu.ca]
Office: N2092A
Ext: 2049
Office Hours: By appointment
     
     
Course Information: Calendar Description: Interfacing a microprocessor or microcontroller with external devices for real-time hardware control. Microcontroller hardware and software in real time applications; serial and parallel I/O; timing generation; priority interrupt structures and servicing; bus timing. Interpretation and use of industry documentation and data sheets.

Prerequisites: CP216, CP/PC320
 
Lecture Monday 7:00 p.m.-9:50 p.m. in N1042

  The lecture periods will include active learning activities, and so participation will be much more effective than attempts to catch up after the fact. In addition, some lectures will contain material vital to the lab immediately following, so absence will make the lab more difficult.

Labs (in N2082) Tuesday 11:30 a.m.-1:50 p.m.

Lab attendance is mandatory.
The labs build upon each other. If you miss a lab, you will have to make it up before you do the next lab.
     
Course Overview and Approach: This is much like a lab course. That means that most of your learning will happen through your hands-on experiences in the lab. The on-line documents have been chosen to give you the background you will need to prepare you for the labs. Since this is an independent study, you'll be learning from these resources on your own.

This course requires previous assembly language programming and electronics experience. PC/CP320 will have already made you familiar with data sheets, sensors, and actuators, and CP216 will have introduced you to assembly language programming. This course will refer often to that previous knowledge and success will depend on it.


At the end of this course you will get a detailed, anonymous evaluation to fill out, where you can indicate your opinion on many aspects of the course. This is one of the most important resources to help me improve the course each time I teach it.
     
Course Goals and Learning Outcomes: By the end of this course, you should be able to:
  • Understand programs written in PIC assembly
  • Write programs in PIC assembly using MPLABX
  • Use microcontroller features such as parallel and serial I/O ports, timers, analog-to-digital converters, etc.
  • Read data sheets for sensors and actuators in order to interface them to a microcontroller
  • Create real-time programs which interact with the external world and use interrupts
  • Employ good coding practices to make programs which are easy to read and maintain
 
Course Tools and Learning Materials: All of the information for this course and all of the available electronic resources are on the course website. I've tried to make it as complete as possible, so that you only have to look in one place for anything relevant to the course. If you find any other resources that are particularly useful, let me know.

You'll need to get a lab notebook for this course. This is very common in science and engineering disciplines, since it develops the habit of keeping all of your observations, thoughts, data, and other information in one place. You'll use notebooks for several electronics labs, and you can re-use notebooks if they have empty space in them since real-life information isn't split into courses. If you want to use the notebook for notes in the lecture, you're welcome to do so.


Recommended Text: textbook

Title: PIC Microcontroller, An Introduction to Software & Hardware Interfacing
ISBN: 1-40-183967-3
Author: Han-Way Huang
Publisher: Thomson Delmar Learning

Not in book store, buy online.

Reference Text:
There won't be any readings from this one, but if you're looking for specific information about the Qwikflash board, this is the place for it.
qwikflash textbook

Title: Embedded Design with the PIC18F452 Microcontroller
ISBN: 0-13-046213-6
Author: John B. Peatman
Publisher: Prentice Hall

Not in book store, buy online.

Web Page: http://denethor.wlu.ca/cp316/

MyLearningSpace (for quizzes) : https://mylearningspace.wlu.ca/
     
Student Evaluation:
Active Learning Exercises 10%
Lab demonstrations 30%
Lab notebook and postlabs 20%
Project 40%
Total 100%


Learning Activities, Assignments, Tests, Quizzes and Examinations: There are several different types of assessment that will happen in this course; some of them are individual and some of them will be collective; i.e. you will work with a partner or in a group and you will all get the same mark. No single method of assessment is best for contributing to your learning, so the variety reflects that.

Active Learning Exercises (group)
These will vary from week to week; some will be exercises which are to be completed before the lab.

Lab demonstrations (groups of two)
  • work demonstrated at every lab
  • every lab will indicate what is to be demonstrated
  • all labs weighted equally
  • see Lab Demonstrations for requirements
  • Each lab will have points at which you have to show me that you have accomplished the required task(s). Usually they also require you to explain something you have learned in your own words to verify that you've understood the key points.
Lab notebooks and postlabs (individual)
There are different types of post-lab requirements for different labs.
  Lab notebook summaries (individual)
  • all work for every lab including prelab exercises, lab notes and results, postlab exercises, and summaries
  • all labs weighted equally
  • see Lab Notebook for requirements
  • The notebook is the vehicle for you to record all of what you learn for future reference. You'll be able to use it for quizzes, so it should be your most vital resource. The questions and summaries that you hand in ensure that what you have recorded for your own reference is useful and correct.
Project (groups of two) The lab project is a real-life test of your ability. Previous students have suggested that a high percentage of marks in the course should be for the project, which suggests the students have found the projects valuable and reasonable. That's why I have assigned the highest single component of the course grade to the lab tests.
     
Weekly Schedule:
(week of)
Component
(tentative)
Topics
(tentative)
January 1 lab 1 PIC18F452 and PIC18 assembly language
January 8 lab 2 PIC18 assembly language, I/O Ports
January 15 lab 3 Software and hardware timers, Interrupts
January 22 lab 4 Interrupts, Flash and EEPROM memory
January 29 lab 5 Programming LCDs
February 5 lab 6 Arithmetic, Digital inputs
February 12 lab 7 Time intervals
February 19 READING WEEK
February 26 lab 8 Serial Interfaces: MSSP, I²C, SPI
March 5 project USART, D/A conversion
March 12 project TBA
March 19 project TBA
April 2 project demonstration TBA
Communication techniques:
  • maintain a research lab notebook
  • design and execute formal demonstrations of circuits and software
  • documentation standards for circuit designs
  • on-line project documentation (web based)
 
 
Design project: TBA  
     
Accessible Learning Students: Students who are colour blind should identify themselves to the lab instructor at the start of the first lab period. Students with disabilities who require classroom and/or laboratory accommodations should identify themselves to the course instructor as soon as possible; preferably before their first lab period. We assume all students requiring academic accommodations will have all accommodations approved by the Accessible Learning Office.
   

Resources

To view pdf documents, you can download Adobe Acrobat Reader .
get Acrobat Reader
If you need to update a browser, you might try Firefox which is Get Firefox!
Since this page uses cascading style sheets for its layout, it will look best with a browser which supports the specifications as fully as possible.

If you are looking for an office package, with a word processor, spreadsheet, etc., you might try LibreOffice which is Get LibreOffice!

Go to the main page for the Department of Physics and Computer Science.

Valid XHTML 1.1

Valid CSS!

WCAG
2.0
(Level AA)

Wilfrid Laurier University