1
EECE416: Microcomputer Fundamentals and Design
PIC - Introduction
PIC16F877
Dr. Charles J. Kim
Howard University
2
Peripheral Interface Controller
PIC: Peripheral Interface ControllerMicrochip Technology (www.microchip.com)Harvard Architecture
3
PIC- continued
Origin: Harvard Architecture for DAPRA ProjectBeaten by Princeton (Single memory)Picked by Signetics 8x300PIC for General InstrumentsCompensation for poor I/OGI spun off into Arizona Microchip Technology (1985)- Microchip Technology
4
PIC -continuedA Large Register Set: 368 Bytes + WRISC Architecture--pipelining35 fixed length (14-bit) single-cycle instructions
5
PIC-continued8-bit machineOperating Speed: Up to 20 MHz8K 14-bit Words FLASH Memory (for Program)368 Bytes RAM (for Data)256 Bytes EEPROM (for Data)Power Saving Mode
6
PIC -continued
Low-power consumption:< 2 mA typical @ 5V, 4 MHz20 mA typical @ 3V, 32 kHz< 1 mA typical standby current
Wide Operating Voltage: 2.0 – 5.0 VTimers
Timer0: 8-bit timer/counter with 8-bit prescalerTimer1: 16-bit timer/counter with prescaler, can be incremented during sleep via external crystal/clockTimer2: 8-bit timer/counter with 8-bit period register, prescaler and postscaler
7
Capture, Compare, PWM modulesCapture is 16-bit, max. resolution is 12.5 nsCompare is 16-bit, max. resolution is 200 nsPWM max. resolution is 10-bit
10-bit multi-channel A-to-D Converter I2C (Inter IC)BusUSART for Serial Communication5 I/O Ports: A, B, C, D, and E
PIC -continued
8
16F87x Family
9
PIN and PACKAGE
DIP
QFP
PLCC
10
PIN
11
F877 Architecture
12
BLOCK Diagram
14
8AD
TXRX
W
13
ALU and W register
14
PROGRAM MEMORY
13-bit PCAddressable up to 8Kx14-bitFLASH Memory Reset Vector: $0000Interrupt: $0004
15
DATA memory (“Register File”)
Partitioned into 4 Banks (or Pages): 0-3Each Bank: 128 BytesUpper Locations: GPR (General Purpose) Reg.--RAMLower Location: SFR (Special Function) Reg.BANK SELECTION:
Status RegisterRP1: Status<6>RP0: Status<5>
16
Register File Map
17
Special Function Registers (bank 0)
18
Special Function Registers (bank 1)
19
Special Function Registers(bank 2 & 3)
20
Input/Output Ports
21
Interrupts
23
Boot Loader Option
24
PIC16F877 Bootloader
25
Minimum Hardware for Boot Loaded Platform
26
Commercially Available PIC16F877 Board
27
PIC-40B-USB Schematic
28
PIC-40B-USB Schematic (PIC area only)
29
Other PIC Board (Not fully evaluated yet)DLP-245PB-G-USBNot evaluatedProblem in Bootloader downloading
Problem in USB driver with Windows