PIC16F877 LCD interfacing code (In 4bit mode) and Proteus simulation

This PIC16F877 microcontroller tutorial answers the question,
“How to interface LCD[1]  in 4bit mode with PIC16F877″ ?

PIC16F877 LCD interfacing
Also, using PIC16 simulator (Proteus) you can verify this LCD code and change it according to your needs. This code is written in C language using MPLAB with HI-TECH C compiler. You can download this code from the ‘Downloads‘ section at the bottom of this page.

It is assumed that you know how to blink an LED with PIC16F877 microcontroller. If you don’t then please read this page first, before proceeding with this article.

The following diagram (made in Proteus) shows the PIC microcontroller circuit diagram.

PIC16F877 LCD interfacing schematic

In the above figure, RB0 pin is being used as Enable pin for LCD. RB1 pin is used as RS pin and PORTB (RB4 to RB7) pins are used as Data bus for the LCD. When code starts running then ‘Hello World!‘ is displayed on the LCD.


The code for the main function is shown below.


LCD interfacing code using PIC16F877 was compiled in MPLAB v8.85 with HI-TECH C v9.83 compiler and simulation was made in Proteus v7.10. To download code and Proteus simulation click here.


For more detail: PIC16F877 LCD interfacing code (In 4bit mode) and Proteus simulation

Current Project / Post can also be found using:

  • lcd interfacing with pic16f877a pdf
  • lcd interfacing with pic16f877a coding in c pdf
  • how to write source code in proteus
  • programing lcd pic microc pdf
READ  Power Pic RGB with Infrared remote control using PIC12F675

Leave a Comment

= 5 + 3

Read previous post:
PIC16F877 based digital clock using LCD display
PIC16F877 based digital clock using LCD display (Code+Proteus simulation)

This PIC16F877 microcontroller tutorial answers the question, " How to implement a digital clock using PIC16F877 ? "   Using...

Scroll to top