Tentative Class Plan - Tuesday and Thursday from 9:00 to 10:15 am
8/28/01 - Introduction

Homework for next class - look at spec for PIC16F873

  • Download 16F87X manual from Microchip (see Web addesses) flip through pages of Section 1, 2, 13
  • Download MPLAB ver. 5.4, manual & tutorial - install and try to get it started
  • Start the acquisition of parts
8/30/01 - Microcontroller components - memory and registers - soldering practice

Homework for next class

  • from 16F87X manual read pages1 (specs), 5 (overview),11-12 (memory organization),15 (special function registers),18 (status registers)
  • from 16F87X manual look at pages 7,14,16-17
  • set development mode of MPLAB for the PIC16F873
9/4/01 - Microcontroller components - meter usage and electronic parts

Homework for next class

  • Download Bootloader for the PIC16F87X 1) print documentation and bring to class, 2) try to load source into MPLAB
  • from 16F87X manual read pages 135 (instruction set)
  • from 16F87X manual look at pages 136 - 142
9/6/01 - Review of assembly language mnemonics and macro assembly language - soldering practice

Homework for next class

  • using MPLAB make a new project
  • using MPLAB build Bootloader for the PIC16F87X
  • look for lines of code in bootloader that need to be modified for the PIC16F873
  • Read boot loader documentation
9/11/01 - Review of bootloader documentation and MPLAB use - soldering of components and construction review

Homework for next class

  • Start construction of project (Project Schematics)
  • In MPLAB look at all of the windows and try to determine what each window is showing. Important Windows.
  • In MPLAB look at MPLAB IDE Project Tutorial found under the tab help>MPLAB IDE Help.
  • Bring parts to class
9/13/01 - Basic linear and digital electronics and check wiring

Homework for next class

  • Write a short program in assembler, build, test using debugger, email me the first_name.asm file (working or not) by next week Monday 9pm. Objective: increment locations 20h from numbers 0h to 7h and then location A0h from 8h to Fh. You must use some type of loop. You cannot just load the values into memory.
9/18/01 - Operational Amplifiers, check board wiring, complete soldering

Homework for next class

  • Continue construction of the PIC16F873 board
  • Complete programming homework by 9pm Wednesday - email any work completed
  • Bring in PIC16F873 for programming
9/20/01 - Review procedure for operating bootloader, review tone program, complete soldering

Homework for next class

  • create program that will create one short beep, pause, two short beeps, pause, three short beeps, pause four short beeps, pause, five short beeps, repeat.
  • Bring in a listing of your program and hopefully a beeping board.

Hyperterm notes, tone.asm, hyperlink configuration file (to save hyperlink file use right button and "save target as" (Explorer) or "save link as" (Netscape). Don't forget to add .ht as a suffix when saving)

9/25/01 - Electronics, operational amplifiers and Schmitt trigger inverter practical use review, previous review homework

Homework for next class

  • Continue construction on PIC 16F873 board
  • Continue working on beeping program
9/27/01 - Midterm prep, PWM

Homework for next class

  • Prepare three questions for midterm from 8/30/01 - 9/06/01 email by 9pm next Monday
  • Continue construction on PIC 16F873 board
  • Continue working on beeping program
  • Bring meters into class
  • PWM - Review PIC16F87X manual pages 55-58, 61-63
10/2/01 - Timer and pulse width modulation output

Homework for next class

  • Write and compile initialization code for the PWM. Set period to 0.0008 sec, duty cycle 50% and correct prescale value. Email your_name.asm by 9pm Wednesday night.
10/4/01 - Review and Motors Demo

10/9/01 - Brush, Steppers and Servo motors Demo

Lecture Notes

10/11/01 - Transistors, Darlington Transistor Array, Nitinol

Homework for next class

  • Prepare three questions for midterm from 9/11/01 - 9/13/01 email by 9pm next Monday
  • Prepare three questions for midterm from 9/18/01 - 9/20/01 email by 9pm next Monday
10/16/01 - Conventional Digital to Analog conversion and pre-exam questions. 10/18/01 - MIDTERM

Homework for next class

  • Program PWM output varying the duty cycle from 1/255 to 254/255 to 1/255 repeatedly with a cycle period of about 10 seconds.
10/23/01 - Midterm discussion, tour of mechanical engineering robotics lab 10/25/01 - Sensor experiments

Homework for next class

  • Complete PWM program
  • bring all parts and meter to class
10/30/01 - Brightness perception experiment, Wheatstone bridge, A to D conversion, solder sensors

Homework for next class

  • Complete PWM program
  • review A to D section
11/01/01 - A to D conversion program, signal detection theory, basic information channel capacity

Homework for next class

  • Write program that takes an analog value from a potentiometer and places the output to the PWM duty cycle. The potentiometer then controls the brightness of an LED. You only need to take the 8 high bits from the a to d and place it into the 8 high bits of the duty cycle. Forget about the two lower bits.
11/6/01 - Noise, Channel capacity problems, Nyquist

Homework for next class

  • work on programs
11/8/01 - Basic control theory

Homework for next class

  • write a program located at $100 that initially checks AD0 port and selects appropriate routine
  • A/D = 20 to 3F > ORG $200 = beep
  • A/D = 40 to 5F > ORG $300 = PWM
  • A/D = 60 to 7F > ORG $400 = ADPWM
  • A/D = 80 to 9F > ORG $500 = thermistor and beep
  • A/D = A0 to BF > ORG $600 = phototransistor and tone pitch
  • A/D = C0 to DF > ORG $700 = move nitinol and check light sensor
  • A/D = 0 to 1F > ORG $800 = AD0 hexidecimal ASCII value to RS232

Note: when programming you must load the entire program. Fragments will not load.

11/13/01 - Review of control theory, control systems (ON/Off and proportional)

11/15/01 - A to D types, sensor signals, project completion

Homework for next class

  • Write a program located at $500 that checks AD1 port, which has the thermistor connected and outputs a beep when the temperature changes by approximately 1 degree F or a change of 1/64th of range (bit 2).
11/20/01 - A to D types, sensor signals

Question list 8, question list 9

11/22/01 - Thanksgiving Holiday

Homework for next class

  • Prepare three questions for midterm from 10/25/01 - 11/01/01 email by 9pm next Monday
  • Write a program located at $600 that checks AD2 port, which has the phototransistor connected and outputs a beep at a higher frequency when the light level changes by approximately 1/8 of range (bit 5).
11/27/01 - Microcontroller RS232 11/29/01 - Other PIC processors and possible uses, synchronous serial interface, synchronous serial devices

Homework for next class

  • Prepare three questions for midterm from 11/06/01 - 11/08/01 email by 9pm next Monday
  • Write a control program located at $700. After a change in the light input of 1/8 of range (or change of bit 5 of the A to D) causes the nitinol wire to turn on 2 seconds, off 3 seconds, on 2 seconds, off 3 seconds, check for light change (repeat).
12/4/01 - Other processor families, work on homework 12/6/01 - Work on homework

Homework for next class

  • Prepare three questions for midterm from 11/13/01 - 11/20/01 email by 9pm next Monday
  • Add to the program at $800 a routine that transmits the hexidecimal ASCII value at AD0 to via RS232 to the computer in hexidecimal.
12/11/01 - Question and answers, work on homework
  • All assignments and questions due next class.
12/13/01 - Review of material
12/18/01 - FINAL EXAM - 9:45 - 11:45