Mic 3

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 18

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.

You might also like