Oct 5, 2014

P10 LED Controller (AT89S52)

The picture below is a P10 LED module. The module contains 16x32 single color LEDs; can be red, yellow, green, blue, white or purple. The controller usually using ARM microcontroller with SPI which is powerful enough to handle several modules connected in series and  more than one module rows. There are two types of P10, semi-outdoor and outdoor; the difference is obvious however the enclosure determines the protection level (drizzle, normal or heavy rain).

This project is for experimental purpose only, showing running text in small, medium and large font on single module. I use AT89X52 mcu this time. Since it doesn't have SPI,  I simulate  SPI by software.




Pay attention on the horizontal arrow, it shows the flow of data, the controller must be connected to the connector behind the arrow. The vertical arrow shows the counting direction of the row but never mind as only one module this time.








Here below the connector configuration
OE: Output Enable for tuning on/off the entire LED
A and B: selection of row to turn on. 4 rows turn on at a time.
Row sequence: 1,5,9,13 then 2,6,10,14 then 3,7,11,15 then 4,8,12,16
CLK: SPI clock
SCLK: Latch register data to LED
R: SPI DATA
Connector configuration at controller side are similar to connector at the LED module. They can be connected in straight connection using 2x8 female-female header ribbon cable.






















Crystal is 24MHz. Internally microcontroller has internal pull-ups so external pull-ups are optional. Just if your P10 module is uncommon, you need external pull-ups. Decoupling capacitor at power line, another capacitor for reset. A little revision, pin 1 of the connector is A and pin 2 is B, in the schematic they are misplaced. The project requires 5V/2A power supply.















Get the code here https://play.google.com/
Note: the code is for shifting left string available in 3 different sizes of character.

9 comments:

Rachman Luzan said...

cool.. nice blog

Chukwuma Egugbo said...

Hello!! This is exactly what I was searching for. How do you programme it with the sort of text you first. I have not purchased it yet. I want to have a background understanding about the prerequisites first. Thanks in advance!!

Silvester Dao said...

You can study the schematic and the code.

christyjames said...

I actually found this blog and that is amazing thing I enjoy reading this easy to understand stuff. Keep it up.
Sign Board Manufacturers in Chennai | Name Board Makers in Chennai

Raman Arumugam said...

Is this code is to compatible to add more P10 module in series?

Unknown said...

No. It can drive only 1 P10 module.

ogbekwe theophius said...

I need the code pls sir ogbekwetheophilus@gmail.com

shriram said...

hello friend, i had purchased this code but still it not work properly.
I have problem like, 4 line are (ie. line no 3,7,11,15) are ON other all lines are off.

SSDao said...

make sure your mcu is working. 4 lines only means the row selection is not changing.

Post a Comment

Water Level Sensor of Washing Machine (STM32F103C8T6)

Washing Machine Typical work principle of water level sensor of a washing machine shown on the picture. Sensor is located above the wa...