16x64 P10 Scrolling LED Display Using PIC16F877 Microcontroller





Introduction: 16x64 P10 Scrolling LED Display Using PIC16F877 Microcontroller

In this instructable, describes how to interface 16 x 64 (p10) LED matrix Display with PICI6F877A microcontroller.

A data sends to the microcontroller via UART which is stored in the EEPROM and the data will have displayed on LED matrix display. It will continue the same data whenever a new data arrived.

The program written in C built with MPLAB.

Step 1: 16x64 (p10) LED Matrix Control

In this system, 16x64 matrix display can show information which will require a whopping 1024 LEDs. This display consists of smaller modules arranged together to from a larger screen, each module usually consisting of 4x8 matrix of LEDs as shown in figure.

Pin out of p10 panel as shown having 6 control lines.

Step 2: Hardware Setup

To develop this project, we need the materials as follows,

  • p10 (16x32) LED Display x 2
  • PICI6F877A microcontroller
  • PIC Microcontroller Development Borad
  • 16 x 32 (p10) LED matrix - 2 nos
  • USB 2 Serial Adapter
  • 5V 5A SMPS

Step 3: Circuit Diagram

Circuit Diagram is shown in the figure.

MCLR pin is pulled up using 10K Resistor.

USB 2 Serial Converter connected in RC6 and RC7 as it support UART Communication and baudrate is 9600 bps.

Here used 20 MHz crystal oscillator.

Pins for (p10) LED Scrolling Display can use any digital Pin. In this project we used,

  • EN - RB4
  • A - RB5
  • B - RB6
  • CLK - RC1
  • SCLK - RD3
  • DATA - RD2

Step 4: Code

Here attaching complete code developed in C.

UART baudrate : 9600 bps

Message format : * <message> $ (eg: *impact$)

Step 5: Output

Here attached video link that we have done.

YouTube: https://youtu.be/39hR-f36eL8

facebook :




  • Epilog Challenge 9

    Epilog Challenge 9
  • First Time Author Contest 2018

    First Time Author Contest 2018
  • Sew Warm Contest 2018

    Sew Warm Contest 2018

We have a be nice policy.
Please be positive and constructive.




Nice work, can you show me how modify the code for No Scrolling. Thank in advance

For static display, there are some more changes.

Microcontrollers are great little chips. You can do so much with them and they don't cost much either. Nice project!