
The PIC16F876 microcontroller brings a powerful blend of performance and ease of use, making it a practical choice for many applications. This 8-bit CMOS FLASH-based microcontroller, featuring Microchip’s PIC® architecture, fits a range of devices in its 28-pin package and is compatible with previous PIC models like the PIC16C5X, PIC12CXXX, and PIC16C7X. The architecture enables rapid 200-nanosecond instruction execution, supporting both speed and efficiency.
With its 256 bytes of EEPROM data memory, built-in self-programming, and in-circuit debugging, this microcontroller stands out for its adaptability across a variety of tasks. It includes five channels of 10-bit analog-to-digital conversion (ADC), useful for analog applications, and is equipped with two additional timers, capture/compare/PWM functions, and multiple communication ports. The ports can be configured as either a three-wire Serial Peripheral Interface (SPI) or a two-wire Inter-Integrated Circuit (I2C) bus, along with a Universal Asynchronous Receiver Transmitter (USART) for flexible data transfer. Together, these features enhance its suitability in fields like automotive, industrial, appliance, and consumer electronics.




This microcontroller's RISC CPU architecture simplifies learning, with just 35 instructions to master. All instructions are single-cycle, except for program branches that take two cycles. Operating at speeds up to 20 MHz, it handles demanding tasks while maintaining efficiency. The memory structure includes up to 8K x 14 words of Flash Program Memory, 368 x 8 bytes of RAM, and 256 x 8 bytes of EEPROM, providing sufficient storage for both programs and data.
With three built-in timers and a range of other features, this microcontroller is well-prepared to manage various tasks. Timer0 is an 8-bit timer/counter with an 8-bit prescaler. Timer1 is a 16-bit timer/counter with prescaler and can increment during Sleep mode via an external crystal. Timer2 is another 8-bit timer with an 8-bit period register, prescaler, and postscaler. The device also includes two Capture, Compare, and PWM (Pulse Width Modulation) modules, along with synchronous and asynchronous communication interfaces such as SPI, I2C, and USART.
The PIC16F876 includes a 10-bit analog-to-digital converter with up to 8 channels, allowing it to handle various analog inputs for precise measurements. Additionally, it has two analog comparators with programmable on-chip voltage reference options and flexible input multiplexing, making it versatile for analog applications that require consistent performance.
This microcontroller is designed for flexibility and reliability, featuring an impressive 100,000 erase/write cycles for its Enhanced Flash memory and 1,000,000 erase/write cycles for the Data EEPROM. Data EEPROM is built to retain data for over 40 years, ensuring data stability over time. It supports In-Circuit Serial Programming (ICSP) through two pins, enabling easy updates and modifications. Watchdog Timer (WDT) and Power-saving Sleep mode add to its reliability, along with code protection for added security.
Built with low-power CMOS technology, the PIC16F876 operates efficiently across a voltage range of 2.0V to 5.5V, making it suitable for various power setups. Its fully static design allows it to handle low-power applications, while offering both commercial and industrial temperature ranges, giving it versatility across different environments.
Technical specifications, attributes, parameters, and comparable parts for the Microchip Technology PIC16F876A-I/SS microcontroller.
| Type | Parameter |
| Factory Lead Time | 8 Weeks |
| Mount | Surface Mount |
| Mounting Type | Surface Mount |
| Package / Case | 28-SSOP (0.209, 5.30mm Width) |
| Number of Pins | 28 |
| Data Converters | A/D 5x10b |
| Number of I/Os | 22 |
| Watchdog Timers | Yes |
| Operating Temperature | -40°C ~ 85°C TA |
| Packaging | Tube |
| Series | PIC® 16F |
| Published | 1997 |
| JESD-609 Code | e3 |
| Pbfree Code | Yes |
| Part Status | Active |
| Moisture Sensitivity Level (MSL) | 1 (Unlimited) |
| Number of Terminations | 28 |
| ECCN Code | EAR99 |
| Terminal Finish | Matte Tin (Sn) |
| Additional Feature | Operates at 4V Minimum Supply |
| Terminal Position | Dual |
| Terminal Form | Gull Wing |
| Peak Reflow Temperature (°C) | 260 |
| Supply Voltage | 5V |
| Frequency | 20MHz |
| Time@Peak Reflow Temperature-Max (s) | 40 |
| Base Part Number | PIC16F876A |
| Pin Count | 28 |
| Power Supplies | 5V |
| Interface | I2C, SPI, SSP, UART, USART |
| Memory Size | 14kB |
| Oscillator Type | External |
| Nominal Supply Current | 1.6mA |
| RAM Size | 368 x 8 |
| Voltage - Supply (Vcc/Vdd) | 4V ~ 5.5V |
| uPs/uCs/Peripheral ICs Type | Microcontroller, RISC |
| Number of Bits | 8 |
| Core Processor | PIC |
| Peripherals | |
| Program Memory Type | FLASH |
| Core Size | 8-Bit |
| Program Memory Size | 14KB (8K x 14) |
| Connectivity | I2C, SPI, UART/USART |
| Bit Size | 8 |
| Access Time | 20 μs |
| Has ADC | Yes |
| DMA Channels | No |
| Data Bus Width | 8b |
| Number of Timers/Counters | 3 |
| Address Bus Width | 8b |
| Density | 112 kb |
| EEPROM Size | 256 x 8 |
| CPU Family | PIC |
| Number of ADC Channels | 5 |
| Number of PWM Channels | 2 |
| Number of I2C Channels | 1 |
| Height | 1.83mm |
| Length | 10.34mm |
| Width | 5.38mm |
| REACH SVHC | No SVHC |
| Radiation Hardening | No |
| RoHS Status | ROHS3 Compliant |
| Lead Free | Lead Free |
| Part Number | PIC16F876A-I/SS | PIC16F767-I/SS | PIC16F73-I/SS | PIC16F76-I/SS |
| Manufacturer | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Package / Case | 28-SSOP (0.209, 5.30mm Width) | 28-SSOP (0.209, 5.30mm Width) | 28-SSOP (0.209, 5.30mm Width) | 28-SSOP (0.209, 5.30mm Width) |
| Number of Pins | 28 | 28 | 28 | 28 |
| Data Bus Width | 8 b | 8 b | 8 b | 8 b |
| Number of I/O | 22 | 25 | 22 | 22 |
| Interface | I2C, SPI, SSP, UART, USART | I2C, SPI, UART, USART | I2C, SPI, SSP, UART, USART | I2C, SPI, SSP, UART, USART |
| Memory Size | 14 kB | 14 kB | 14 kB | 7 kB |
| Supply Voltage | 5 V | 5 V | 5 V | 5 V |
| Peripherals | Brown-out Detect/Reset, ... | Brown-out Detect/Reset, ... | Brown-out Detect/Reset, ... | Brown-out Detect/Reset, ... |


| Part Number | Description | Manufacturer |
| PIC16F876T-04I/SO | MICROCONTROLLERS AND PROCESSORS 8-BIT, FLASH, 4 MHz, RISC MICROCONTROLLER, PDSO28, 0.300 INCH, PLASTIC, MS-013, SO-28 | Microchip Technology Inc |
| PIC16F876T-04/SO | MICROCONTROLLERS AND PROCESSORS 8-BIT, FLASH, 4 MHz, RISC MICROCONTROLLER, PDSO28, 0.300 INCH, PLASTIC, MS-013, SO-28 | Microchip Technology Inc |
| PIC16F876-04I/PM | MICROCONTROLLERS AND PROCESSORS 8-BIT, FLASH, 4 MHz, RISC MICROCONTROLLER, PDIP28, PLASTIC, DIP-28 | Microchip Technology Inc |
| PIC16F876T-04/PQ | MICROCONTROLLERS AND PROCESSORS 8-BIT, FLASH, 4 MHz, RISC MICROCONTROLLER, PQFP44, 10 X 10 MM, 2 MM HEIGHT, METRIC, PLASTIC, QFP-44 | Microchip Technology Inc |
| PIC16F876-04/L | MICROCONTROLLERS AND PROCESSORS 8-BIT, FLASH, 4 MHz, RISC MICROCONTROLLER, PQCC44, PLASTIC, LCC-44 | Microchip Technology Inc |
| PIC16F876T-04/L | MICROCONTROLLERS AND PROCESSORS 8-BIT, FLASH, 4 MHz, RISC MICROCONTROLLER, PQCC44, PLASTIC, LCC-44 | Microchip Technology Inc |
| PIC16F876T-04I/PT | MICROCONTROLLERS AND PROCESSORS 8-BIT, FLASH, 4 MHz, RISC MICROCONTROLLER, PQFP44, 10 X 10 MM, 1 MM HEIGHT, PLASTIC, TQFP-44 | Microchip Technology Inc |
| PIC16F876-04/PQ | MICROCONTROLLERS AND PROCESSORS 8-BIT, FLASH, 4 MHz, RISC MICROCONTROLLER, PQFP44, 10 X 10 MM, 2 MM HEIGHT, METRIC, PLASTIC, QFP-44 | Microchip Technology Inc |
| PIC16F876-04I-SP | MICROCONTROLLERS AND PROCESSORS 8-BIT, FLASH, 4 MHz, RISC MICROCONTROLLER, PDIP28, 0.300 INCH, SKINNY, PLASTIC, MO-095, DIP-28 | Microchip Technology Inc |
| PIC16F876-04I/SO | MICROCONTROLLERS AND PROCESSORS 8-BIT, FLASH, 4 MHz, RISC MICROCONTROLLER, PDSO28, 0.300 INCH, PLASTIC, MS-013, SO-28 | Microchip Technology Inc |
In automotive systems, the PIC16F876 is often used for controlling sensors, managing signals, and processing data from various components. Its analog-to-digital conversion and pulse width modulation capabilities make it useful in monitoring engine parameters and controlling actuators, providing reliable performance for vehicle functions.
The PIC16F876’s robust features, including multiple timers, communication interfaces, and analog capabilities, suit it well for industrial automation tasks. It can control machinery, handle sensor inputs, and enable precise timing and data handling in manufacturing processes, helping maintain consistency and accuracy in industrial operations.
This microcontroller’s versatility makes it ideal for modern appliances, where it can handle a variety of functions, from motor control in washing machines to sensor management in smart thermostats. Its power-saving Sleep mode and wide operating voltage range are particularly advantageous in appliance applications where energy efficiency is valued.
In consumer electronics, the PIC16F876 manages tasks that involve user interfaces, data handling, and control functions. Its analog and digital capabilities enable it to work with sensors, manage data from inputs like buttons or dials, and control outputs, making it suitable for products like home automation devices, remote controls, and interactive electronics.

Microchip Technology, Inc. designs and supplies embedded control solutions that help create reliable, connected, and secure devices. The company’s products and development tools allow engineers to create highly optimized designs that balance cost, performance, and time to market. Headquartered in Chandler, Arizona, Microchip serves a diverse range of industries, including automotive, industrial, consumer electronics, aerospace, defense, and communications.
Over 120,000 customers rely on Microchip for quality and consistency, which are reflected in its delivery standards and product dependability. The company prioritizes technical support, offering resources that help customers effectively integrate Microchip components into their designs. This focus on customer support, paired with a broad selection of embedded solutions, reinforces Microchip's role as a leading choice in the market.
The oscillator might not be vibrating because of the crystal itself or the circuit board connections. Different types of oscillators, such as ceramic and metal crystal oscillators, connect differently. Ensure that the connections align with the type of crystal oscillator you are using. Double-checking the circuit board layout can also help identify any connection issues.
Only constants can be stored in the program memory, which means that data can only be accessed using a lookup table. This array data, once stored in the program register along with the program, becomes read-only and can’t be modified by the program itself. If you need to change the data, consider adding an external flash memory chip, which will act as expandable data memory that the PIC16F876 can access and modify as needed.
Yes, the RB port on the PIC16F876 has a built-in pull-up resistor, but it works only when the port is set as an input. When configured as an output, the pull-up resistor is disabled. To ensure proper function, verify that the configuration bits are set correctly. For instance, if you’re using a 4M crystal, set it to XT, while an 8M crystal should be set to HS for high-speed oscillation. Also, ensure the low-voltage programming bit (LVP) is turned off.
Please send an inquiry, we will respond immediately.
on October 29th
on October 29th
on April 18th 147749
on April 18th 111904
on April 18th 111349
on April 18th 83714
on January 1th 79502
on January 1th 66868
on January 1th 63004
on January 1th 62939
on January 1th 54076
on January 1th 52087