Dr. Farid Farahmand: Sonoma State University

ES 310: Microprocessors and System Design
Instructor: Dr. Farid Farahmand
Spring 2016

    Lecture/Lab:Tues. & Thursday. 9:20 am-11:50 am
    Office Hours: click here
    Office: Salazar 2010
    Phone: (707) 664-3491
    Email: farid dot farahmand at sonoma dot edu

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? The course focuses on 8-bit PIC architecture. You will be using PIC18F46J50 chip.

 

Lecture Topics and Schedule
Day Lecture Reading Material Assignment/Activity Due
1/26 Read the syllabus carefully Start Reading Chapter 1;  
1/28

Sign up for ES 310 in Piazza - Piazza app is available for smartphone / Bring a folder with your name on it! / Make sure you order the Textbooks / Submit Statement of Ethics / Review the web page!

Make sure you have the following:

  1. A writable CD for your project.
  2. A Folder for all the assignments.
  3. Arrange to have your own LAPTOP; Apple owners may experience extra challanges!
2/2
2/4
2/9
  • Chapter 2 - Architecture, Opcodes, Memory Structure, ALU, Stack and Pointers, PIC Controllers, IDE Simulator
  • Introducing Oshon Soft Simulator IDE
  • Review the Diigo Class Links
 
  • Part I: Read Appendix F - Complete up to F.1.5 - Must show blinking LED!
  • Part II: Do these questions: Chapter 1- Questions
  • NOTES: Read the Syllabus carefully, to see how to submit your assignment
  • In class (ICL-0) : Modify the program in Appendix F
2/11
2/16
2/18
  • Continue with PIC instrucitons.
  • Learn about MIPS - how useful is it?
 
2/23
  • In class (ICL-2) : Save CheckCarry code into your project directory - Find its errors (if any) and compile it. Add F1 + F1. Show the results.
  • Quiz (assembly commands, features of PIC, Status register, simple programs)
2/25
  • In class (ICL-2) Write a program: Add 78 + F1. Show the results. Hex Calculator
  • Go over Lab 2 and make sure you know how to do the assisgnment. Pay attention to details!
3/1  
  • Submit: Lab 2
  • Quiz (Indirect addressing / FSR / Program example)
  • Article is due - submit through Piazza
  • In class: Write a program to save your name in program memory starting 0x100 - Must show!
3/3
  • Division operation in assembly
  • Package Types
  • Chapter 6 - See notes
3/8  
3/10
  • Install Mouser Software!
  • In class (ICL-4): Do the program in the slides. Answer the questions.
3/15-17 Spring Break Spring Break Spring Break
3/22
  • Submit and demostrate Lab 5
  • Quiz (Indirect addressing / Macro and subroutine . PC & Stack / Table Pointers / Programming Example)
  • In class: Read Program Example 9.5; Modify your LED Blinking program such that it stops blinking when the SW is pressed!
3/24 Midterm Exam Midterm Exam  
3/24
  • Article is due - submit through Piazza
  • Submit Lab 6
  • In class: Using the onine compiler write a C program to generate the following sequences: 0,2,0,4,0,8,..0,128,0,2,0,4,0... (Example C programs)
3/29 YouTube: How to use the Stimulus in MPLAB X
3/31 March 31: Cesar Chavez Birthday (campus closed)  
4/5    
  • In class: Write a C program to blink number 1 on your 7 segment.
  • Submit Lab 7 - Must demonstrate in class.
4/7 Chapter 10 - Interrupts in PIC
Summary of Interrupt Registers in PIC
4/12 Chapter 12 - Analog to Digital Converters / Opamps / Digital to Analog converters/
  • Quiz - In class program / C - Book (Chapters 1-4 & 6)
  • Submit Lab 8 - C Programing
4/14 Cont. with Chapter 12    
11/12 Chapter 13 ( USART Interface. See your notes) / A practical guide to USART

 

  • Quiz - In class program / C - Book (Chapters 1-4 & 6)/Interrupts / ADC / Op-Amps
  • Submit an abstract for your project Read Course Syllabus for more information about the abstract for final project.
  • Submit Lab 9 - ADC and Random Number Generation
4/19

Continue Chapter 13

 
4/21

 

4/26 Chapter 11 / WDT/Clocks / Reset

4/28 Continue with Chapter 11    
5/3
5/5    
5/10
5/12 Project Presentation - Review/ Read the Course Syllabus Carefully for Project Guidelines POST your slides on (something like) a tri-folding board. You can buy a hard board and turn it into a tri-folding board (buy one from Dollar Store for $1  
5/17 Final Exam / Submit class evaluation form / / Submit your final CD / No late submisison is allowed.   In order to be able to take the final exam you are required to bring a snapshot of your Moodle indicating that you have completed the class evaluations.


Support Documents, Resources, and Links
Lecture Related ((supplementary material):) General

Chapter 1:

Chapter 2------------------------

C- Programing ------------------------

 

 

 

Tools & Software:

Important Resources

 

Link to previous versions of this class (ABET):

  1. Fall 2015 - ??? Using PIC DEMO Board / MPLAB & C18 Compiler / PicKit2 / Chip Kit / More advanced sensros were used
  2. Spring 2015 - Using PIC DEMO Board / MPLAB & C18 Compiler / PicKit2 / Chip Kit / More advanced sensros were used
  3. Spring 2014 - Using PIC DEMO Board / MPLAB & C18 Compiler / PicKit2 / Chip Kit
  4. Spring 2012 - Using PIC DEMO Board / MPLAB & C18 Compiler / PicKit2
  5. Spring 2010 - Using PIC DEMO Board / MPLAB & C18 Compiler / PicKit2
  6. Spring 2009 - Using PIC DEMO Board / MPLAB & C18 Compiler ()/ PicKit2