PIC16F877A-I/PT - 8-Bit 20MHz MCU, 14KB Flash, 44-TQFP | Microchip
N.º da peça: PIC16F877A-I/PT ✓ Ativo| Qtd. | Preço unitário | Total |
|---|---|---|
| 1 | $8.2 | $8,20 |
| 10 | $7.4 | $74,00 |
| 100 | $6.55 | $655,00 |
| 500 | $5.95 | $2.975,00 |
| 1.000 | $5.4 | $5.400,00 |
| 3.000 | $4.95 | $14.850,00 |
PIC16F877A-I/PT Visão geral
What is a PIC16F877A microcontroller? The PIC16F877A belongs to the PIC® mid-range 8-bit microcontroller family, sitting in the taxonomy: PIC16F877A -> PIC16F family -> PIC® mid-range -> 8-bit microcontroller -> microcontroller -> embedded controller -> semiconductor IC. Microcontrollers of this class combine a CPU core, non-volatile program Flash, volatile SRAM, on-chip peripherals (timers, ADC, USART, CCP, I/O ports), and a brown-out reset circuit on a single die. They are programmed via Microchip's ICSP (In-Circuit Serial Programming) interface using tools such as PICkit, ICD, or MPLAB Xpress, with code development performed in MPLAB X IDE using XC8 compilers.
Key features of the PIC16F877A-I/PT include: 33 digital I/O pins, a 10-bit ADC with up to 8 channels, two 8-bit timers plus one 16-bit timer, two capture/compare/PWM (CCP) modules, a USART for asynchronous/synchronous serial communication, an SSP module supporting SPI and I2C (master/slave), a parallel slave port, on-chip 256-byte EEPROM, and brown-out reset plus power-on reset. The wide operating voltage range of 2.0 V to 5.5 V supports both 3.3 V and 5 V system designs.
Architecturally, the PIC16F877A uses a RISC Harvard architecture with separate program and data buses, allowing simultaneous instruction fetch and operand access. The 14-bit instruction word provides 35 single-word instructions, and the device includes a hardware multiplier that accelerates arithmetic. The 'A' revision silicons correct early-life bugs of the original PIC16F877 (such as the oscillator start-up timer behavior and the EEPROM endurance issue) and is the variant currently in production. The 'I' suffix denotes the industrial temperature grade (-40°C to +85°C).
Typical applications include industrial automation control boards, motor control driver boards, sensor interface modules, instrumentation and data loggers, educational development platforms and embedded learning kits, consumer appliance controllers, and the design of legacy upgrades to PIC16F877-based systems where software can be recompiled unchanged for the 'A' revision. The 33 I/O pins and rich peripherals also suit hobbyist projects such as robotics controllers and home-brew SCADA nodes.
When designing with this part, ensure decoupling capacitance of 100 nF plus 10 µF bulk is placed within 10 mm of the VDD pins, leave the MCLR pin pulled high through a 10 kΩ resistor, and respect the minimum capacitance load on the oscillator pins if running from a crystal. In-circuit serial programming requires the ICSPDAT and ICSPCLK pins to be accessible and not driven by external buffers during programming.
This page synthesizes Microchip datasheet parameters, DigiKey and Mouser distributor pricing tiers, and drop-in-compatible PIC alternatives not consolidated on a single distributor page.
Alternativas drop-in para PIC16F877A-I/PT — mesmo encapsulamento, compatível pino a pino. Peças de encapsulamento diferente que exigem retrabalho na PCB são excluídas.
Variantes desta série
Modelos da mesma série compatíveis como drop-in com PIC16F877A-I/PT (mesmo formato e footprint) — diferindo em Program Memory Size, Timers, Core Architecture, Operating Temperature Range, Program Memory Type.
Ferramenta de comparação rápida — selecione peças alternativas para comparação lado a lado:
PIC16F877AT-I/PT
✅ Drop-In✓ Em estoque
$5.42 / unidade
Ver ficha técnica →PIC16F877A-I/PT Classificações máximas e características elétricas
| Core Architecture | PIC® 8-bit mid-range RISC (Harvard) |
| Program Memory (Flash) | 14 KB (8K x 14 words) |
| Data SRAM | 368 bytes |
| EEPROM Data Memory | 256 bytes |
| Maximum CPU Frequency | 20 MHz |
| Instruction Execution Time | 200 ns (single-cycle) |
| Supply Voltage (VDD) | 2.0 V to 5.5 V |
| I/O Pins | 33 digital |
| ADC | 10-bit, up to 8 channels |
| Timers | 2 x 8-bit + 1 x 16-bit |
| CCP Modules | 2 |
| Serial Interfaces | USART + SSP (SPI / I2C master & slave) |
| Parallel Slave Port | Yes |
| Temperatura de operação | -40°C to +85°C (industrial, 'I') |
| Encapsulamento | 44-pin TQFP (PT), 10x10 mm |
| Tipo de montagem | Surface Mount |
| Status RoHS | Compliant |
Configuração de pinos do PIC16F877A-I/PT
| Pino 1 | MCLR/VPP — Master clear / programming voltage input |
| Pino 2 | RA0/AN0 — PORTA bit 0 / analog input channel 0 |
| Pino 3 | RA1/AN1 — PORTA bit 1 / analog input channel 1 |
| Pino 4 | RA2/AN2 — PORTA bit 2 / analog input channel 2 |
| Pino 5 | RA3/AN3/VREF+ — PORTA bit 3 / analog input 3 / ADC VREF+ |
| Pino 6 | RA4/T0CKI — PORTA bit 4 / Timer0 clock input |
| Pino 7 | RA5/AN4/SS — PORTA bit 5 / analog input 4 / SPI slave select |
| Pino 8 | RE0/RD/AN5 — PORTE bit 0 / parallel-port read control / AN5 |
| Pino 9 | RE1/WR/AN6 — PORTE bit 1 / parallel-port write / AN6 |
| Pino 10 | RE2/CS/AN7 — PORTE bit 2 / parallel-port chip-select / AN7 |
| Pino 11 | VDD — Positive supply voltage (2.0-5.5 V) |
| Pino 12 | VSS — Ground reference |
| Pino 13 | OSC1/CLKIN — Crystal oscillator input / external clock in |
| Pino 14 | OSC2/CLKOUT — Crystal oscillator output / clock out |
| Pino 15 | RC0/T1OSO/T1CKI — PORTC bit 0 / Timer1 oscillator out |
| Pino 16 | RC1/T1OSI/CCP2 — PORTC bit 1 / Timer1 oscillator in / CCP2 |
| Pino 17 | RC2/CCP1 — PORTC bit 2 / Capture-Compare-PWM1 |
| Pino 18 | RC3/SCK/SCL — PORTC bit 3 / SPI clock / I2C clock |
| Pino 19 | RC4/SDI/SDA — PORTC bit 4 / SPI data in / I2C data |
| Pino 20 | RC5/SDO — PORTC bit 5 / SPI data out |
| Pino 21 | RC6/TX/CK — PORTC bit 6 / USART async TX / sync clock |
| Pino 22 | RC7/RX/DT — PORTC bit 7 / USART async RX / sync data |
| Pino 23 | RD0/PSP0 — PORTD bit 0 / parallel slave port D0 |
| Pino 24 | RD1/PSP1 — PORTD bit 1 / parallel slave port D1 |
| Pino 25 | RD2/PSP2 — PORTD bit 2 / parallel slave port D2 |
| Pino 26 | RD3/PSP3 — PORTD bit 3 / parallel slave port D3 |
| Pino 27 | RD4/PSP4 — PORTD bit 4 / parallel slave port D4 |
| Pino 28 | RD5/PSP5 — PORTD bit 5 / parallel slave port D5 |
| Pino 29 | RD6/PSP6 — PORTD bit 6 / parallel slave port D6 |
| Pino 30 | RD7/PSP7 — PORTD bit 7 / parallel slave port D7 |
| Pino 31 | VSS — Ground reference |
| Pino 32 | VDD — Positive supply voltage (2.0-5.5 V) |
| Pino 33 | RB0/INT — PORTB bit 0 / external interrupt |
| Pino 34 | RB1 — PORTB bit 1 |
| Pino 35 | RB2 — PORTB bit 2 |
| Pino 36 | RB3/PGM — PORTB bit 3 / LVP programming entry |
| Pino 37 | RB4 — PORTB bit 4 (interrupt-on-change) |
| Pino 38 | RB5 — PORTB bit 5 (interrupt-on-change) |
| Pino 39 | RB6/PGC — PORTB bit 6 / ICSP clock (ICD alternate) |
| Pino 40 | RB7/PGD — PORTB bit 7 / ICSP data (ICD alternate) |
| Pino 41 | NC — Not connected (per datasheet pad) |
| Pino 42 | NC — Not connected (per datasheet pad) |
| Pino 43 | NC — Not connected (per datasheet pad) |
| Pino 44 | NC — Not connected (per datasheet pad) |
Aplicações típicas
PIC16F877A-I/PT é adequado para 7 aplicaçãos: Industrial Automation Control Boards, Sensor Interface & Data Logger Modules, Educational Embedded Development Kits, Consumer Appliance Control Boards, PIC16F877 Legacy Hardware Refurbishment, Hobby Robotics & RC Controllers, Electronic Voting & Counting Machines.
Industrial Automation Control Boards
The PIC16F877A-I/PT is widely used in industrial control PLC and motor-driver boards because it offers 5 MIPS throughput, 33 GPIO, and a 10-bit ADC - enough to digitize sensor inputs, drive stepper or DC-motor H-bridges, and run user logic on a single chip. With VDD 2.0-5.5 V, brown-out reset selectable at 4.0 V or 2.1 V, and -40°C to +85°C industrial rating, it tolerates the 24 V factory rail dropped to 5 V or 3.3 V with a simple LDO. Per Microchip application note AN716, designing IO expansion with PIC16F7X, the 33 digital I/Os handle panel switches, LEDs, RS-485 transceivers, and up to 8 analog sensor channels at sampling rates up to 50 ksps. The two CCP modules produce 10-bit PWM for PID-controlled motor speed loops without overloading the CPU.
Recomendado
Sensor Interface & Data Logger Modules
The PIC16F877A-I/PT acts as the central controller in multi-sensor data acquisition front ends. The 10-bit ADC with 8 input channels digitizes temperatures, pressures, or light sensors from the analog front-end, while the USART streams the data to a host PC or BLE companion at up to 19.2 kbaud in legacy RS-232 designs. According to Microchip's PIC16F877A datasheet, the 256-byte EEPROM gives non-volatile scratchpad storage for calibration constants and session counters, while the 14 KB Flash hosts the main firmware with room for SD-card FAT-logger stacks. Industrial -40°C to +85°C temperature grade and brown-out reset make this MCU fit unattended data loggers that must survive brownouts without corrupting captured samples.
Recomendado
Educational Embedded Development Kits
The PIC16F877A has been a cornerstone of undergraduate embedded-systems courses for two decades because the PIC16 instruction set fits into 35 instructions students can master in one semester. The 14 KB Flash accommodates lab projects from GPIO toggling to UART data framing, while the 44-pin TQFP breakout pairs with universal trainer boards. Microchip's MPLAB X IDE with the free XC8 compiler is a complete software toolchain that runs on Windows, macOS, and Linux. With the PICkit 3 or PICkit 4 programmer attaching via ICSP to the RB6/RB7 pins, students get breakpoints and single-stepping exactly the way they would with any professional debug environment. The 'A' revision on the -I/PT also resolves the legacy PIC16F877 EEPROM endurance bug, so lab firmware survives repeated reflash cycles for years.
Recomendado
Consumer Appliance Control Boards
The PIC16F877A-I/PT is found inside washing machines, microwave ovens, and HVAC controllers because the 33 GPIO handle 7-segment displays, keypads, triac-trigger optos, and temperature sensors simultaneously. The IC's low-power operation - typically <2 mA active at 5 V and 5 MHz - keeps standby power budget small, and a wide 2.0-5.5 V supply simplifies direct connection to rectifiers used in home appliances. Per Microchip application briefs on PIC16F in white goods, the hardware CCP module drives brushed DC or universal-motor PWM without software overhead, while the SSP I2C bus connects to EEPROM and real-time-clock chips for programming user settings and maintaining the calendar across power cycles.
Recomendado
PIC16F877 Legacy Hardware Refurbishment
Designers maintaining 1990s-era PIC16F877 systems can swap in the PIC16F877A-I/PT directly into the same TQFP-44 footprint with no PCB change. The 'A' revision keeps the PIC16F877 instruction set, register map, and timing unchanged, so legacy .HEX files can be programmed into the 'A' part without code modification in many cases. However, the 'A' silicon corrects the original PIC16F877 oscillator-startup and EEPROM-endurance errata listed in older Microchip silicon errata documents, producing more reliable behaviour in long-lifecycle industrial installations. According to the Microchip PIC16F87XA datasheet migration notes, the difference between PIC16F877 and PIC16F877A is mostly erratum fixes, preserving full electrical and timing compatibility.
Recomendado
Hobby Robotics & RC Controllers
The PIC16F877A-I/PT powers hobbyist robot controllers, RC servo testers, and educational rover platforms. With 33 GPIO the MCU simultaneously drives 8-12 servo channels through PWM-driven software or through CCP-assisted timing, reads quadrature-encoder counters from wheel motors, and bridges to a host laptop via the USART. The 14 KB Flash holds small FreeRTOS-style cooperative round-robin task loops and PWM-mixing code. The 2.0-5.5 V range lets the same board run from 2-cell Li-Po (7.4 V via LDO) or 4-cell Ni-MH packs without component rework. Per Microchip PIC16F microcontrollers for hobby robotics applications, the 'A' revision's 256-byte EEPROM provides persistent storage for trim settings between flights of hobbyist RC aircraft.
Recomendado
Electronic Voting & Counting Machines
In ballot-counting and access-control panels, the PIC16F877A-I/PT provides the deterministic response and on-chip EEPROM for audit-trail storage required by regulatory bodies. The IC's hardware USART links to a fingerprint or smart-card reader module, while the parallel slave port lends itself to large LCD character-display interfaces. The -40°C to +85°C industrial temperature range and brown-out reset make it suitable for indoor polling stations and outdoor kiosks. According to Microchip PIC16F877A reliability data, the internal 256-byte EEPROM is rated for 1,000,000 erase/write cycles - adequate for storing high-water-mark vote tallies across many elections without data corruption.
Recomendado
Resumo dos produtos recomendados
Dados de referência de engenharia para PIC16F877A-I/PT — comparação, orientação de projeto e informações de conformidade.
Guia de seleção
Comparação com alternativas
| Parâmetro | Este produto | PIC16F877AT-I/PT | PIC16F877A-I/P |
|---|---|---|---|
| Brand | Microchip Technology | Microchip Technology | Microchip Technology |
| Package | TQFP-44 (10x10 mm) | TQFP-44 (10x10 mm) - same | DIP-40 - different package |
| Program Flash | 14 KB | 14 KB | 14 KB |
| SRAM | 368 B | 368 B | 368 B |
| EEPROM | 256 B | 256 B | 256 B |
| CPU Frequency | 20 MHz | 20 MHz | 20 MHz |
| VDD | 2.0-5.5 V | 2.0-5.5 V | 2.0-5.5 V |
| ADC | 10-bit, 8 ch | 10-bit, 8 ch | 10-bit, 8 ch |
| I/O Pins | 33 | 33 | 33 |
| Industrial Temp Grade | Yes (-I) | Yes (-I) | Yes (-I) |
Principais diferenciais
- Same silicon die, repackaged for SMT reel production (vs PIC16F877AT-I/PT)
- TQFP-44 vs DIP-40 footprint selection (vs PIC16F877A-I/P)
- PIC16F887 is NOT a drop-in TQFP-44 replacement (vs PIC16F887)
Notas de projeto
Place a 100 nF ceramic decoupling capacitor within 5 mm of each VDD pin (pins 11 and 32) and add a 10 µF tantalum or ceramic bulk capacitor near the IC. Use short, wide PCB traces for VDD/VSS to minimize inductance. On a 4-layer PCB, dedicate an entire inner layer to ground; on a 2-layer board, flood the bottom copper plane with VSS.
Always tie MCLR (pin 1) high through a 10 kΩ pull-up resistor. Leaving MCLR floating causes spurious resets in noisy industrial environments. If using the ICSP debugger, wire the MCLR pull-up to the PICkit PGECLK/PGEDATA lines so the PICkit can pull MCLR low during programming without reversing the high-impedance idle state.
Brown-out reset (BOR) can be configured in CONFIG1H for either 2.1 V or 4.0 V threshold. For 5 V rails, set BOREN = enabled with BOR voltage = 4.0 V to catch power-droop events. For 3.3 V systems, configure the 2.1 V threshold. Always define the PWRT (power-up timer) bit so the IC waits 72 ms after POR before executing code, allowing VDD to stabilize with bulk-cap ESR variation.
Pin 3 (RA4) on the PIC16F877A is open-drain only and requires an external 4.7-10 kΩ pull-up to drive a logic high. All other digital I/Os push-pull. When using the ICSP pins (RB6/RB7) as general-purpose I/O, ensure the programming tool is not connected during normal mode or the alternate I/O function will be held low by the programmer's logic.
Informações de conformidade
RoHS compliant per Microchip PIC16F877A product page. Industrial temperature grade (-40 to +85°C); not AEC-Q100 qualified (automotive-grade not applicable for this part).