PIC16F72 8-bit PIC Microcontroller
PIC16F72 is a low-cost, low-power, high-speed CMOS Flash technology capable, 8-bit, fully-static Microcontroller unit that has 28 pins out of which 22 pins can be used as I/O pins. It has Power-on-Reset (POR) as well as the Power-up Timer (PWRT) and Oscillator Start-up Timer (OST) circuitry.
PIC16F72 Pin Configuration
Pin Number |
Pin Name |
Description |
1 |
MCLR / VPP |
MCLR is used during programming, mostly connected to programmer like PicKit |
2 |
RA0 / AN0 |
Analog pin 0 or 0th pin of PORTA |
3 |
RA1 / AN1 |
Analog pin 1 or 1st pin of PORTA |
4 |
RA2 / AN2 |
Analog pin 2 or 2nd pin of PORTA |
5 |
RA3 / AN3 / VREF |
Analog pin 3 or 3rd pin of PORTA |
6 |
RA4 / T0CKI |
4th pin of PORTA |
7 |
RA5 / AN5 / SS |
Analog pin 4 or 5th pin of PORTA |
8 |
Vss |
Ground Pin of MCU |
9 |
OSC1 / CLKI |
External Oscillator or clock input pin |
10 |
OSC2 / CLKO |
External Oscillator or clock output pin |
11 |
RC0 / T1OSO / T1CKI |
0th pin of PORT C or Timer1 oscillator output or Timer1 External Clock Input |
12 |
RC1 / T1CKO |
1st pin of PORTC or Timer1 external Clock Output |
13 |
RC2 / CCP1 |
2nd pin of PORTC or CAPTURE/COMPARE/PWM pin |
14 |
RC3 / SCK / SCL |
3rd pin of PORTC or Serial Data Clock pin |
15 |
RC4 / SDI / SDA |
4th pin of PORTC or Serial Data In pin |
16 |
RC5 / SDO |
5th pin of PORTC or Serial Data Out pin |
17 |
RC6 |
6th pin of PORTC |
18 |
RC7 |
7th pin of PORTC |
19 |
Vss |
Ground Pin of MCU |
20 |
Vdd |
Positive Pin of MCU (+5V) |
21 |
RB0 / INT |
0th pin of PORTB or External Interrupt pin |
22 |
RB1 |
1st pin of PORTB |
23 |
RB2 |
2nd pin of PORTB |
24 |
RB3 |
3rd pin of PORTB |
25 |
RB4 |
4th pin of PORTB |
26 |
RB5 |
5th pin of PORTB |
27 |
RB6 / PGC |
6th pin of PORTB or connected to programmer |
28 |
RB7 / PDG |
7th pin of PORTB or connected to programmer |
Features and Specification of the PIC16F72 Microcontroller
PIC16F72 - Simplified Features and Specification |
|
CPU |
Baseline 8-bit |
Number of Pins |
28 |
Operating Voltage (V) |
2-5.5V |
Number of I/O pins |
22 |
ADC Module |
8-bit, 5-channel |
Timer Module |
2 x 8-bit 1 x 16-bit |
Capture/Compare/PWM Peripherals |
1 x 16-bit Capture module 1 x 16-bit Compare module, 1 x 10-bit PWM module, |
DAC Module |
Nil |
Communication Peripherals |
1 x SSP (SPI / I2C) |
External Oscillator |
Up to 20Mhz |
Internal Oscillator |
Nil |
Program Memory (KB) |
3.5KB |
CPU Speed (MIPS) |
5 MIPS |
RAM Bytes |
128 |
Data EEPROM |
Nil |
Note: Complete technical details can be found in the PIC16F72 Datasheet linked at the bottom of this page.
Introduction to PIC16F72
PIC16F72 is a low-cost, low-power, high-speed CMOS Flash technology capable, 8-bit, fully-static Microcontroller unit that has 28 pins out of which 22 pins can be used as I/O pins. It has Power-on-Reset (POR) as well as the Power-up Timer (PWRT) and Oscillator Start-up Timer (OST) circuitry.
It has a SLEEP mode, which can be configured in Power saving applications. PIC16F72 also comes with the code protection, watchdog timer mode that serve the power and reliability feature. Also, system cost can be greatly reduced by using this microcontroller unit.
It has a wide operating voltage ranging from 2V to 5.5V. Thus, it can be used in 3.3V or 5.0V logic level operations. The below image is showing the detailed pin diagram of the PIC16F72.
Detailed Features of PIC16F72
PIC16F72 –Detailed Features |
|
CPU |
Baseline 8-Bit |
Architecture |
8 |
Program Memory Size (Kbytes) |
3.5 |
RAM (bytes) |
128 |
EEPROM/HEF |
0 |
Pin Count |
28 |
Max. CPU Speed (MHz) |
20 |
Peripheral Pin Select (PPS) |
No |
Internal Oscillator |
0 |
No. Of comparators |
0 |
No. Of Operational Amplifier |
0 |
No. Of ADC channels |
5 |
Max ADC Resolution (bits) |
8 |
ADC with Computation |
0 |
Number of DAC Converter |
0 |
Max DAC resolution |
- |
Internal Voltage Reference |
No |
Zero Cross Detect |
No |
No. Of 8-bit timers |
2 |
No. Of 16-bit Timers |
1 |
Signal Measurement Timer |
0 |
Hardware Limit Timer |
0 |
No. Of PWM outputs |
1 |
Max PWM resolution |
10 |
Angular Timer |
0 |
Math Accelerator |
No |
No. Of UART module |
0 |
No. Of SPI Module |
1 |
No. Of I2C module |
1 |
No. Of USB Module |
0 |
Windowed Watchdog Timer (WWDT) |
Yes |
CRC/Scan |
No |
Numerically Controlled Oscillator |
No |
Cap. Touch Channels |
0 |
Segment LCD |
0 |
Minimum Operating Temperature (°C) |
-40 |
Maximum Operating Temperature (°C) |
125 |
Minimum Operating Voltage (V) |
2 |
Maximum Operating Voltage (V) |
5.5 |
High Voltage Capable |
No |
Programming PIC Microcontroller
PIC microcontrollers can be programmed with different software that is available in the market. There are people who still use Assembly language to program PIC MCUs. The below details is for the most advanced and common software and compiler that has been developed by Microchip itself.
In order to program the PIC microcontroller, we will need an IDE (Integrated Development Environment), where the programming takes place. A compiler, where our program gets converted into MCU readable form called HEX files. An IPE (Integrated Programming Environment), which is used to dump our hex file into our PIC MCUs.
IDE: MPLABX v3.35
IPE: MPLAB IPE v3.35
Compiler: XC8
Microchip has given all these three software for free. They can be downloaded directly from their official page. I have also provided the link for your convenience. Once downloaded, install them on your computer. If you have any problem doing so, you can post them on the comment below.
To dump or upload our code into PIC, we will need a device called PICkit 3. The PICkit 3 programmer/debugger is a simple, low-cost in-circuit debugger that is controlled by a PC running MPLAB IDE (v8.20 or greater) software on a Windows platform. The PICkit 3 programmer/debugger is an integral part of the development engineer's tool suite. A basic programming circuit for PIC16F72 is shown below.
In addition to this, we will also need other hardware like a Perf board or breadboard, Soldering station, PIC ICs, Crystal oscillators, capacitors, etc.
Components associated with PIC
PICkit3, PIC Development Board, Crystal Oscillators, Capacitors, 12V Adapter, 7805 Voltage Regulator.
Application of PIC16F72
This is a basic Mid-range 8-bit microcontroller unit that can be used in the following applications-
1. Input Output operations
2. Control Applications
3. Analog data Processing
4. Sensors integration and data logging
5. Small scale, low cost embedded application based production
2D Model
The dimensions of the PIC16F72 are shown below-