Microcontroller – 2
PIC
Various companies
• Freescale semiconductor’s –x Motorola]
68HC11
• Intel – 8051
• Atmel – AVR
• Zilong – Z8
• Microchip technology – PIC
• etc.
PIC – Peripheral Interface Controller
by Microchip Tech. Corp.
• Peripheral?
• Interface?
• Controller?
PIC Microcontrollers
• Peripheral Interface Controller (PIC) was
originally designed by General Instruments
• In the late 1970s, GI introduced PIC® 1650 and
1655 – RISC with 30 instructions.
• PIC was sold to Microchip
• Features: low-cost, self-contained, 8-bit, Harvard
structure, pipelined, RISC, single accumulator,
with fixed reset and interrupt vectors.
Dr. Gheith Abandah 4
PIC Families
PIC Family Stack Size Instruction No of Interrupt
Word Size Instructions Vectors
12CX/12FX 2 12- or 14-bit 33 None
16C5X/16F5X 2 12-bit 33 None
16CX/16FX 8 14-bit 35 1
17CX 16 16-bit 58 4
18CX/18FX 32 16-bit 75 2
‘C’ implies CMOS technology; Complementary Metal Oxide Semiconductor
‘F’ insert indicates incorporation of Flash memory technology
Example: 16C84 was the first of its kind. It was later reissued as the 16F84,
incorporating Flash memory technology. It was then reissued as 16F84A.
Dr. Gheith Abandah 5
12 Series PIC
The small 12F508
Dr. Gheith Abandah 6
PIC 12F508/509 pin connection diagram
Dr. Gheith Abandah 7
The 12F508 Architecture
Dr. Gheith Abandah 8
Microchip is the no. 1 supplied of 8-bit
microcontrollers!
• 8 pins
• Small Data RAM
• Few hundred bytes of on-chip (program [code]) ROM
• One timer
• Few pins for I/O ports
• 8-bit processor – CPU can work on only 8-bits of data
at a time
Q: if data is larger than 8 bits?
Break it into 8-bit pieces to be processed by the CPU
PIC… - Upwardly compatible in terms of
software, when going from one family to
another family?
• Not always – prob!
• E.g.,
– PIC12xxx has 12-bit wide instructions
– PIC16xxx has 14-bit wide instructions
– PIC18xxx has 16-bit wide instructions & many new instructions
*So, to run a prog in PIC18 – but written for PIC12
– we MUST recompile the prog, &
– possibly change some register locations before loading it into
the PIC18.
PIC18xxx
• Highest-performance 8-bit microcontroller
• ~ 18- to 80-pin packages
• Now, no 8-pin versions of PIC18 [others have]
Q. RISC or CISC architecture?
– RISC!
PIC18
• RISC
• Data RAM
• On-chip (program [code]) ROM
• Data EEPROM - Q. What is EEPROM?
• I/O ports
• Peripherals – e.g.,
– Timers
– ADC – Q. What is ADC?
– USART - Universal Asynchronous Receiver/Transmitter
Read
• Simplified view of a PIC microcontroller
• PIC18, PIC16 block diagrams
ROM – why?
• To store programs
– hence, called program/code ROM
• PIC18 has 2MB of prog ROM space
• This ROM type may be of –
– Flash
– OTP
– Masked
[more in Ch. 14]
PIC mcc with UV-EPROM
• Need PROM burner
• Need UV-EPROM eraser to erase the contents of
ROM
• The window of the U…M chip allows the UV
light to erase the roM
• ~20min to erase the chip before it can be
programmed again
hence, need flash version of the PIC family
[see Table 1-2]
PIC18Fxxx with flash memory
• F – for flash
• Flash version can erase in seconds
• Need a ROM burner that supports flash mem
• But a ROM eraser is not needed, as flash is an
EEPROM [electrically-
• An embedded system is a product that has one or more
computers embedded within it, which exercise primarily a
control function.
• The embedded computer is usually a microcontroller: a
microprocessor adapted for embedded control applications.
• Microcontrollers are designed according to accepted
electronic and computer principles, and are fundamentally
made up of microprocessor core, memory and peripherals.
• Microchip offers a wide range of microcontrollers,
divided into a number of different families. Each
family has identical central architecture and
instruction set. However, common features also
appear across all their microcontrollers.
• The Microchip 12F508 is a good microcontroller to
introduce a range of features of microcontrollers in
general and of PIC microcontrollers in particular.