Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

C-Programming for LED Dot Matrix

Status
Not open for further replies.

agent5

Newbie level 5
Joined
Jul 27, 2011
Messages
9
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,380
Hi all,

I am working on a LED Dot Matrix Display and this is my schematics.

I am looking through the programming now and I have a question: how can we output a string of serial bit into shift register (DS) from an array made up of few sets of hex?

For instance:

unsigned char code table1[]={
0x80,0x80,0x80,0x80,0x80,0x80, // SPACE
0x80,0x80,0x5F,0x80,0x80,0x80, // !
0x04,0x02,0x05,0x02,0x01,0x80, // "
0x14,0x7F,0x14,0x7F,0x14,0x80, // #
0x26,0x49,0x7F,0x49,0x32,0x80,// $
}

**broken link removed**
* the shift registers are connecting to positive columns / current sinker to negative row (its a common cathode block but I twist it to fit the design)
* and I am using AT89s52 but proteus dont provide the chip

Please give comments. Thanks. :)
 

use at89c51 controller in proteus and addtional register 74164
 

So what you have is 8x8 led matrixs that are multiplexed so only on row can be active at one time. So you procedure would be to update one row with the correct column data. Turn on the first row. Wait. Turn off row. Update columns with second rows data. Turn on second row. wait. and repeat will you are on the last row (row 8). Then start from the top (row 1).

This is a character look up table for how to draw ascii text onto the display. For the first character space, you have. Row1, Row2, Row3,...,Row8.
unsigned char code table1[]={
0x80,0x80,0x80,0x80,0x80,0x80, // SPACE
0x80,0x80,0x5F,0x80,0x80,0x80, // !
0x04,0x02,0x05,0x02,0x01,0x80, // "
0x14,0x7F,0x14,0x7F,0x14,0x80, // #
0x26,0x49,0x7F,0x49,0x32,0x80,// $
}

So if you where on row 3 and you had the string "! $", you would write: 0x5F, 0x80, 0x7F.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top