PIC16F877A-I/P 8-bit MCU 40-Pin
8,000 د.ع
Build powerful and versatile embedded systems for your industrial, educational, or hobby projects using the PIC16F877A-I/P, a high-performance 8-bit microcontroller from Microchip Technology. Housed in a convenient 40-pin DIP (Dual In-line Package), this original IC is one of the most popular and well-documented microcontrollers in the PIC family. It offers a rich set of features, including a large 14KB flash memory, 368 bytes of RAM, and 256 bytes of EEPROM, making it ideal for a wide variety of applications such as data logging, motor control, automation systems, and complex DIY electronics projects.
In stock
CompareDescription
PIC16F877A-I/P Microcontroller – 8-bit MCU with 14KB Flash (40-Pin DIP IC)
Build powerful and versatile embedded systems for your industrial, educational, or hobby projects using the PIC16F877A-I/P, a high-performance 8-bit microcontroller from Microchip Technology. Housed in a convenient 40-pin DIP (Dual In-line Package), this original IC is one of the most popular and well-documented microcontrollers in the PIC family. It offers a rich set of features, including a large 14KB flash memory, 368 bytes of RAM, and 256 bytes of EEPROM, making it ideal for a wide variety of applications such as data logging, motor control, automation systems, and complex DIY electronics projects.
The PIC16F877A-I/P is built on Microchip’s advanced RISC architecture, executing all instructions in a single cycle except for program branches (which take two cycles). It is specified to operate at clock speeds up to 20 MHz, delivering a high level of performance for demanding real-time control tasks. The device includes multiple essential peripherals, such as an 8-channel 10-bit Analog-to-Digital Converter (ADC), making it easy to interface with analog sensors like temperature sensors, potentiometers, and light detectors. Additionally, it features two Capture/Compare/PWM (CCP) modules, two USARTs for serial communication, an I2C/SPI interface (MSSP), and three timers.
Key Features
High-Performance RISC CPU
Based on the PIC16 core with a 35-word instruction set. All single-cycle instructions, except for program branches, provide fast and predictable execution. Operating speeds from DC to 20 MHz.
Large 14KB Flash Program Memory
Provides 8K x 14 words of flash memory for program storage. This memory is re-programmable, making it perfect for prototyping and firmware updates in the field.
368 Bytes of RAM and 256 Bytes of EEPROM
Ample RAM for data manipulation and a generous EEPROM for non-volatile storage of calibration constants, user settings, or logged data that must be retained after power-off.
8-Channel 10-bit Analog-to-Digital Converter
The integrated ADC allows direct connection to up to 8 analog sensors without the need for external conversion chips. 10-bit resolution (0-1023) offers precise measurement of analog values.
Two Capture/Compare/PWM (CCP) Modules
These modules are highly versatile. In Capture mode, they can measure pulse widths and signal periods. In Compare mode, they can trigger events. In PWM mode, they can generate variable duty cycle signals for motor speed control, LED dimming, and generating analog-like voltages.
Two USART Modules (Enhanced USART)
Supports both asynchronous (RS-232 style) and synchronous serial communication. Great for communicating with PCs, GPS modules, Bluetooth modules, and other serial devices. The second USART offers additional flexibility for multi-device communication.
Master Synchronous Serial Port (MSSP)
Supports both SPI (4-wire) and I2C (2-wire) protocols. This allows you to easily connect to a wide ecosystem of sensors (temperature, humidity, accelerometer), memory chips (EEPROM, Flash), and display modules (OLED, LCD).
Three Timers
One 8-bit timer and two 16-bit timers, providing flexible timing solutions for delays, pulse generation, event counting, and real-time clocks.
33 I/O Pins with High Current Drive
The 33 bidirectional I/O pins are capable of sinking/sourcing 25mA per pin, allowing them to directly drive LEDs, small relays, and other low-power peripherals without needing external driver circuits.
Parallel Slave Port (PSP)
An 8-bit parallel port that can be used for high-speed communication with external devices like other microcontrollers, FPGAs, or external memory (with appropriate address latching).
Wide Operating Voltage Range
Operates from 2.0V to 5.5V DC, offering compatibility with both 3.3V and 5V logic systems and enabling battery-powered and portable applications.
Specifications
| Parameter | Value |
|---|---|
| Part Number | PIC16F877A-I/P |
| Manufacturer | Microchip Technology |
| Core Architecture | 8-bit PIC RISC |
| CPU Speed | DC – 20 MHz |
| Program Memory (Flash) | 14.3 KB (8K x 14 words) |
| SRAM | 368 bytes |
| EEPROM | 256 bytes |
| I/O Pins | 33 |
| ADC | 8 channels, 10-bit resolution |
| Timers | 1 x 8-bit, 2 x 16-bit |
| CCP Modules | 2 |
| USART | 2 (Enhanced USART) |
| SPI / I2C (MSSP) | 1 (Master Synchronous Serial Port) |
| Parallel Slave Port (PSP) | 1 (8-bit) |
| Operating Voltage | 2.0V – 5.5V DC |
| Operating Temperature | -40°C to +85°C (Industrial grade) |
| Package Type | PDIP-40 (Plastic Dual In-line) |
| Pin Pitch | 2.54mm (0.1 inch) |
| Instruction Set | 35 instructions (RISC) |
| Interrupt Sources | 14 |
| Hardware Stack | 8-level deep |
| Watchdog Timer | Yes (with independent on-chip RC oscillator) |
| Power-down (SLEEP) Mode | Yes |
| Programming / Debugging | ICSP (In-Circuit Serial Programming) via RB6 and RB7 |
| RoHS Compliant | Yes |
Pin Configuration
The PIC16F877A-I/P follows the standard 40-pin PDIP pinout with the following key pin groups:
| Pin Group | Pins | Functions |
|---|---|---|
| Port A | RA0-RA5 | Digital I/O, Analog Inputs (AN0-AN4), VREF+, VREF- |
| Port B | RB0-RB7 | Digital I/O, External Interrupts (INT), ICSP programming pins (RB6, RB7) |
| Port C | RC0-RC7 | Digital I/O, CCP outputs (RC1, RC2), USART (RC6/TX, RC7/RX), SPI/I2C (RC3/SCK, RC4/SDI, RC5/SDO) |
| Port D | RD0-RD7 | Digital I/O, Parallel Slave Port (PSP) |
| Port E | RE0-RE2 | Digital I/O, Analog Inputs (AN5-AN7), Read/Write/Enable for PSP |
| Power | VDD, VSS | Positive supply (2.0-5.5V) and ground (multiple pins) |
| Oscillator | OSC1, OSC2 | Crystal or external clock input |
| Master Clear | MCLR | Master clear (reset) input with internal pull-up |
| Programming | RB6 (PGC), RB7 (PGD) | In-Circuit Serial Programming pins |
Wiring Diagram
Basic Power and ICSP Programming Connection
Power Supply (5V) -----> VDD (Pin 11, 32) Power Supply (GND) ----> VSS (Pin 12, 31) ICSP Programmer (PICkit3) PIC16F877A Target ------------------------- ----------------- Pin 1 (MCLR/VPP) -----> MCLR (Pin 1) Pin 2 (VDD) -----> VDD (Pin 11/32) Pin 3 (VSS) -----> VSS (Pin 12/31) Pin 4 (PGD) -----> RB7 (Pin 40) Pin 5 (PGC) -----> RB6 (Pin 39)
Connecting an Analog Sensor (Potentiometer)
PIC16F877A 10kΩ Potentiometer ----------- ----------------- RA0/AN0 (Pin 2) -----> Wiper (Center Pin) VDD (Pin 11/32) -----> Outer Pin 1 VSS (Pin 12/31) -----> Outer Pin 3
20MHz Crystal Oscillator Connection
20 MHz Crystal -----> OSC1 (Pin 13)
-----> OSC2 (Pin 14)
(with 15-22pF capacitors to ground)Sample C Code (MPLAB XC8 Compiler)
// Simple LED Blink and Analog Read Example // Reads a potentiometer on AN0 and blinks an LED on RD0 #include <xc.h> #include "config.h" // Configuration bits header #define _XTAL_FREQ 20000000 // 20 MHz crystal frequency void main(void) { TRISD = 0x00; // Set PORT D as output (for LEDs) TRISA = 0x01; // Set RA0 as input (AN0 for potentiometer) ADCON1 = 0x0E; // Configure AN0 as analog, others as digital while(1) { // Read analog value from potentiometer (0-1023) int adc_value = ADC_Read(0); // If the value is greater than half (512), turn LED on if (adc_value > 512) { RD0 = 1; } else { RD0 = 0; } __delay_ms(50); } }
Common Applications
Industrial automation and process control
Data acquisition and logging systems
Motor drive and speed control
Home automation and security systems
Educational training platforms
Robotics and mechatronics
Automotive electronics (non-critical)
Medical device prototyping
Complex hobbyist projects
Important Usage Notes
For external clock operation up to 20MHz, connect a 20MHz crystal with 15-22pF capacitors between OSC1 and OSC2
The MCLR pin must be held high for normal operation (connect to VDD via 10kΩ resistor)
For ICSP programming, ensure no other components load the RB6 and RB7 pins
The device supports low-voltage programming, but high-voltage (13V) programming on MCLR is recommended
All unused I/O pins should be configured as outputs or tied to VSS via resistors to avoid floating inputs
The internal EEPROM has a limited write endurance (100,000 cycles); avoid writing to it too frequently in loops
Package Contents
1 x PIC16F877A-I/P Microcontroller IC (New Original)
متحكم PIC16F877A-I/P – شريحة MCU 8 بت بذاكرة 14 كيلوبايت (40 دبوس DIP)
ابنِ أنظمة مدمجة قوية ومتعددة الاستخدامات لمشاريعك الصناعية أو التعليمية أو هواياتك باستخدام متحكم PIC16F877A-I/P، وهو متحكم 8 بت عالي الأداء من Microchip Technology. يأتي في حزمة DIP مريحة ذات 40 دبوسًا، وهذه الشريحة الأصلية هي واحدة من أكثر المتحكمات شهرة وتوثيقًا في عائلة PIC. تقدم مجموعة غنية من الميزات، بما في ذلك ذاكرة فلاش كبيرة بسعة 14 كيلوبايت و 368 بايت من ذاكرة الوصول العشوائي و 256 بايت من ذاكرة EEPROM، مما يجعلها مثالية لمجموعة واسعة من التطبيقات مثل تسجيل البيانات والتحكم في المحركات وأنظمة الأتمتة ومشاريع الإلكترونيات DIY المعقدة.
تم بناء PIC16F877A-I/P على بنية RISC المتقدمة من Microchip، حيث يتم تنفيذ جميع التعليمات في دورة واحدة باستثناء فروع البرنامج. تم تصميمها للعمل بسرعات ساعة تصل إلى 20 ميجاهرتز، مما يوفر مستوى عالٍ من الأداء لمهام التحكم في الوقت الفعلي المتطلبة. تتضمن الشريحة محول تماثلي رقمي 10 بت بـ 8 قنوات، مما يسهل الربط بأجهزة الاستشعار التماثلية. بالإضافة إلى ذلك، تتميز بوحدتي CCP واثنين من USART وواجهة I2C/SPI وثلاثة مؤقتات.
المميزات الرئيسية
وحدة معالجة مركزية RISC عالية الأداء
تعتمد على نواة PIC مع 35 تعليمة، مع تنفيذ جميع التعليمات في دورة واحدة. سرعات تشغيل من DC إلى 20 ميجاهرتز.
ذاكرة فلاش برامج كبيرة 14 كيلوبايت
توفر ذاكرة فلاش للبرامج قابلة لإعادة البرمجة، مثالية للنمذجة الأولية وتحديثات البرامج الثابتة.
368 بايت من ذاكرة الوصول العشوائي و 256 بايت من EEPROM
ذاكرة وصول عشوائي وافرة وذاكرة EEPROM غير متطايرة لتخزين بيانات التكوين وإعدادات المستخدم.
محول تماثلي رقمي 8 قنوات 10 بت
يسمح بالاتصال المباشر بما يصل إلى 8 أجهزة استشعار تماثلية بدون شرائح تحويل خارجية.
وحدتا CCP
متعددة الاستخدامات لقياس عرض النبضة وتوليد PWM للتحكم في سرعة المحرك وتعتيم LED.
اثنان من USART
يدعمان الاتصال التسلسلي غير المتزامن والمتزامن للتواصل مع أجهزة الكمبيوتر ووحدات Bluetooth.
واجهة MSSP (SPI/I2C)
يدعم بروتوكولي SPI و I2C للاتصال بمجموعة واسعة من أجهزة الاستشعار ورقائق الذاكرة ووحدات العرض.
33 دبوس إدخال/إخراج
يمكن لدبابيس الإدخال/الإخراج تشغيل مصابيح LED والمرحلات الصغيرة مباشرة.
المواصفات الفنية
| المعامل | القيمة |
|---|---|
| رقم القطعة | PIC16F877A-I/P |
| الشركة المصنعة | Microchip Technology |
| هندسة النواة | PIC RISC 8 بت |
| سرعة وحدة المعالجة المركزية | حتى 20 ميجاهرتز |
| ذاكرة البرامج (فلاش) | 14.3 كيلوبايت |
| ذاكرة الوصول العشوائي | 368 بايت |
| ذاكرة EEPROM | 256 بايت |
| دبابيس الإدخال/الإخراج | 33 |
| ADC | 8 قنوات، 10 بت |
| المؤقتات | 1 × 8 بت، 2 × 16 بت |
| وحدات CCP | 2 |
| USART | 2 |
| SPI / I2C | 1 |
| جهد التشغيل | 2.0V – 5.5V |
| درجة حرارة التشغيل | -40 درجة مئوية إلى +85 درجة مئوية |
| نوع الحزمة | PDIP-40 |
| تباعد الدبابيس | 2.54 مم |
تكوين الدبابيس
| مجموعة الدبابيس | الدبابيس | الوظائف |
|---|---|---|
| Port A | RA0-RA5 | إدخال/إخراج رقمي، مداخل تماثلية |
| Port B | RB0-RB7 | إدخال/إخراج رقمي، مقاطعات خارجية، ICSP |
| Port C | RC0-RC7 | إدخال/إخراج رقمي، CCP، USART، SPI/I2C |
| Port D | RD0-RD7 | إدخال/إخراج رقمي، منفذ متوازي |
| Port E | RE0-RE2 | إدخال/إخراج رقمي، مداخل تماثلية |
| الطاقة | VDD, VSS | طاقة وأرضي |
| المذبذب | OSC1, OSC2 | دخل وساعة مذبذب بلوري |
| إعادة الضبط | MCLR | إعادة ضبط رئيسية |
التطبيقات الشائعة
الأتمتة الصناعية والتحكم في العمليات
أنظمة اكتساب البيانات وتسجيلها
التحكم في سرعة المحركات
أتمتة المنزل وأنظمة الأمن
منصات التدريب التعليمية
الروبوتات والميكاترونكس
نمذجة أولية للأجهزة الطبية
محتويات العلبة
1 × شريحة متحكم PIC16F877A-I/P جديدة أصلية






Reviews
There are no reviews yet