Skip to main content
shopping_basket Basket 0

Introduction to PIC16F877a


The PIC16F877A microcontroller is among the PICmicro Family microchips that are currently famous among beginners and experts alike. Since it is simple to operate and utilizes FLASH memory innovation, it could be written or cleaned numerous times. The efficiency of this RISC Microchip over other 8-bit microchips, particularly regarding the performance and code reduction.

PIC16F877A microcontroller

Since it possesses a substantial programming memory (huge in respect to detector and control applications) of 8k words and 368 Bytes of RAM, the 16F877A is a powerful microprocessor that could accomplish various projects and is sufficient for a variety of applications.

Such as the 16F88 and the 18F4550, you could find more recent areas that possess essentially similar capability as the 16F877A but also possesses an integrated clock. Additionally, the 16F887 utilizes a nano wattTM technology to operate at reduced voltage.

PIC16F877A Characteristics

PIC16F877A, like every other microchip, possesses integrated helpful functions such as those listed below:

PIC16F877A Pin-out

  • Module for analog to digital conversion: It has an 8-channel ADC module with an 8-bit resolution. With this microprocessor, we may utilize up to eight analog detectors.
  • Timer0, timer1, and timer2 are the three timers available. Every timer could be set to work as a timer or as a counter. They are utilized to provide delays, PWM, peripheral activity tracking, and timer interruptions, among other things. TIMER0 is an 8-bit timer that can work with either an integrated or peripheral clock. Whenever we are utilizing Timer0, we normally utilize IF, and whenever we utilize it in CTR, we utilize an external clock origin. TIMER1 is a 16-bit timer that can function in the two modes as well. TIMER2 is likewise an 8-bit program. It serves as a time base for the CCP module when utilized with PWM.
  • EEPROM: It includes a 256 x 8-byte EEPROM, that could be utilized to save files permanently irrespective of when the microchip is turned off. It is commonly utilized in applications involving electrical locks.
  • It also includes two PWM modules and two CCP modules. CCP is an acronym for Capture Compare PWM modules. Utilizing this microprocessor, we could simply produce 2 PWM signals. It provides a maximal resolution of 10 bits.
  • Pins for Serial or UART communication: It possesses a single UART channel. Serial communication amidst electronic gadgets is accomplished via UART pins.
  • I2C Communication: The PIC16F877A also enables I2C communication and possesses a dedicated module for it. SCL and SDA pins are 18/RC3 and 23/RC4, respectively.
  • Interrupts: In the realm of integrated gadgets, interrupts are quite useful. If you do not understand interrupts, it is recommended that you learn everything there is to comprehend them; otherwise, you would be unable to get them programmed in integrated devices. Peripheral Interrupts, Timer Interrupts, PORT State Change Interrupts, PWM Interrupts, I2C and UART Interrupts are all available on the PIC16F877A microprocessor.
  • It comes with a measuring system's microprocessor that is made up of 2 comparators. They are comparable to measuring systems in electrical boards in that they are utilized to compare analog signals.
  • Watchdog timer: It is a free-running on-chip independent oscillator. It is a different oscillator than OSC1/CLKI. Supposing the gadget is in sleep or standby mode, WDT would operate. Popularly utilized in awakening gadgets from sleep or standby mode, as well as resetting the WDT.
  • Sleep mode: You could utilize this module in sleep mode. The gadget utilizes extremely little power. A minimal value of current is drawn by all external devices. Interrupts resources such as timer1 interrupt, UART interrupt, EEPROM is utilized in writing finish execution, and others could wake you up from sleep mode.
  • The module also includes a brownout detector PCB that detects a large fall in power supply voltage. It would produce an interrupt signal if the supply voltage falls under a particular threshold. This BODEN is utilized whenever you are trying to get it disabled or enabled.
  • Brownout reset: When the gadget detects a brownout interrupting the signal from the BODEN signal, this alternative resets the gadget. Whenever the supplied voltage falls under the criterion for over 100 Microseconds, the system would shut down.
  • Programmable code protection: The gadget would be reset due to a brownout, and it would stay reset until the charge increased to its net figure. All 72 milliseconds, the gadget examines for voltage.

The following are other noteworthy characteristics:

  • Reset the power
  • Group of oscillators with many oscillators
  • In-Circuit Debugger
  • In-Circuit Serial Programming
  • Low-voltage power programming in ICSP

PIC16F877a Ports

  • PortA is an analog port with a total of 8 pins.
  • PortB contains eight pins as well, although they are all digital pins.
  • PortC possesses an 8-pin digital port as well.
  • Serial communication is also carried through via PortC pins.
  • PortD contains eight digital pins.
  • PortE possesses three pins.

PIC16F877A Circuit Schematic for Flashing LED

PIC16F877A Circuit Schematic

  • In Proteus, create this PCB. As described in the pin explanation field, link the pins to the source(S), GND, and oscillator.
  • Via two 22 picofarad capacitors, link the 8MHz oscillator to OSCI and OSC2.
  • Via a 10,000Ω resistor, supply 5V to the RST pin.
  • It possesses a Light Emitting Diode attached to the 33 RB0 pin, and a resistor(R) is utilized in regulating the charge and keeping the Light Emitting Diode from getting burned out. In microC pro, start writing and collating the program.
  • Once you have double-clicked on the chips in proteus, you may end up getting the microprocessor burnt with the hexadecimal source file and execute the PCB effectively. Checking the datasheet of a microprocessor is the perfect approach whenever you are learning more about it.
  • A well-known programmer was utilized in attaining codes uploaded to microprocessors.

Applications for the PIC16F877a

PIC16F877A Application

  • Integrated technology projects are where it is most commonly employed.
  • It is a component of robotics.
  • It is also employed in initiatives involving automation.


Well, that is all there is to know about the PIC16F877a. We have done our best to address every facet of the PIC Microchip like the characteristics and applications.

OliviaTurner has not written a bio yet…

Recommended Articles

DesignSpark Electrical Logolinkedin