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.

8051 based Moving massage display

Status
Not open for further replies.

s.k.sahoo

Junior Member level 1
Joined
Jul 18, 2008
Messages
17
Helped
1
Reputation
2
Reaction score
0
Trophy points
1,281
Activity points
1,471
Hi members,
Please can any one guide me to develop a PC interfaced 8051 based 3 language 16*16 LED matrix 15 char moving massage board. I know a little bit assembly.
Thanks
sks
 

Do you mean use PC to display moving message on LED matrix?
If you want this, there are many products you can consult.
 

Thanks Mr unaided and senthilkumar for reply,
There are many projects in the eda board, but i want a guidance from any member to learn things in a better way. pl reply.
Thanks
sks
 

Hi,
I had developed this product some time back. It was showing 3 languages: English, Hindi/Marathi and Gujrati. It could be extended to show other languages also.

Before we can start I would like to know the following:
1. Is this is student project or a commercial project?
2. What is your background? How familiar are you with 8051 and its tools? What tools are you using ? Assembler/Compiler programmer,etc
3. What is the time frame for this project?
4. How much have you studied/worked on this project?
5. What exactly do you want to know in this project?
.:arrow: 5a. How messages are scrolled?
.:arrow: 5b. How are fonts displayed?
.:arrow: 5c. How is this product interfaced to PC?
.:arrow: 5d. How will you store/send messages from PC?
6. Is the PC Side software ready?
 

Hello Mr Kiran.V.Sutar,
Many many thanks for showing interest to help me. I will tell the truth, First it is not a student project.
I am an elderly person , learning micro, had already developed 6digit multiplexed object counter using 8051 & done some small projects, basically i am from electronics background worked in PHILIPS INDIA, WESTERN TELEVISION LTD learning Micro.
I am using MIDE-51.
No time limit has been fixed as i want to know things.
Right now i am following a Project published in ELEKTOR ELECTRONICS many years back, this project is for ENGLISH Text only.
I using Hyper terminal for sending data through serial port for communicating with 8051 right now for other projects, i don't know whether this will solve my purpose or i have to write code in Visual Basic? as i don't know Visual Basic i have to get help from others who knows VB.
i want to learn all
5a. How messages are scrolled?
5b. How are fonts displayed?
5c. How is this product interfaced to PC?
5d. How will you store/send messages from PC?
Please help me by guiding me.
Thanks again
sks
 

Hi,
Sorry for replying late to you, I was out of town for few days, hence I am writing late to you. Well, here are some answers:

5a. How messages are scrolled?
Answer:
By now, I think you are familiar with Display Buffer.
In the ISR, you are showing the contents of the display buffer. The size of the Display buffer is the same as your physical display.
Original Code is Something like:

Code:
/*
Assuming an 8x8 display 
Rows are connected to P0, and Columns are connected to P2
*/
unsigned char DisplayBuffer[8];

code unsigned char ColumnTable[]=
{0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80};


void ISRTimer0 (void) interrupt 1    // ISR Timer 0
{
P0=DisplayBuffer[DisplayCount];
P2=ColumnTable[DisplayCount];
if (DisplayCount<7) DisplayCount++; else DisplayCount=0;
}

Here is the twist: (and digest it thouroughly):
Make the size of the display buffer something huge, (say about 4000 bytes).
Make one more Counter (call it Ctr1, initialize it to 0).
In the ISR, you display the part of the DisplayBuffer, exactly the size of the physical display.

Change the Code to something like this:
Code:
/*
Assuming an 8x8 display 
Rows are connected to P0, and Columns are connected to P2
*/
unsigned char DisplayBuffer[4000];

code unsigned char ColumnTable[]=
{0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80};

unsigned int Ctr1=0;

void ISRTimer0 (void) interrupt 1    // ISR Timer 0
{
P0=DisplayBuffer[DisplayCount+Ctr1];
P2=ColumnTable[DisplayCount];
if (DisplayCount<7) DisplayCount++; else DisplayCount=0;
}

void ISRTimer1 (void) interrupt 3    // ISR Timer 3
{
if (Ctr1<(4000-1))  Ctr1++;  else Ctr1=0;
}

/*
Be sure to write the data into Display Buffer between locations 8..to..(4000-8)
so that you can see leading and trailing blanks.
*/


5b. How are fonts displayed?
Answer:
You have to make bitmaps of the fonts, and include them in your code, and write it accordingly into the Display Buffer.


5d. How will you store/send messages from PC?
Answer:
Since you are already using HyperTerminal, You can save your messages as the text file in your PC, and send the file, using some of the protocols used by HyperTerminal, to send the File, such as XMODEM. You can search the Internet for XMODEM Details.


A word of caution:
1. I have skipped the nitty-gritties in the above codes. The above code is just to show you the guidelines.

2.I have never sent a file using HyperTerminal to a microcontroller, hence I will not be of much help for this. Ask a specific question for this on this forum and you will get the answer for it from other members. I use VB6 to send and recieve files, and since you are NOT familiar with VB6, I would suggest you to use HyperTerminal, and it is easy to use it.


You can take professional help if you feel it is a lot more complicated.

You can contact me at : kiranvsutar@rediffmail.com.
Although, I suggest (and recommend) you to ask questions on this forum, so that everybody can benefit from those questions and answers.
 

can you give the code in assembly language???? please so that I can understand it, my problem is that I know how moving message display work but dont know how to scrol a message?
regards
 

Hi sn_burki,
You can write the above code in Assembly.
If you do not understand the above code, then post your display routine (ISR).
I will modify it to scroll the messages, and post it back here.

Please see to it that you comment the code, so that it will be easy for others (also) to understand it.
 

Hii sn burki,

You will find using c language more easy then assembler (TRUS ME) . If you use

mide, than it' perefect because this software has been atached by SDCC.

http://www.opcube.com/home.html (this the link if you want to upgrade MIDE)

if you wanna learn about programming c you can use this link :

http://www.mytutorialcafe.com/

After you learn you will find that C is more easy than assembler.

I've already develop the moving message but using AVR and my compiler code

vision avr, if you want the reference I can send it to you.
 

hi s.k.sahoo
if can pls can u helep me i want same kind of project
 

the_balistic said:
Hii sn burki,

You will find using c language more easy then assembler (TRUS ME) . If you use

mide, than it' perefect because this software has been atached by SDCC.

http://www.opcube.com/home.html (this the link if you want to upgrade MIDE)

if you wanna learn about programming c you can use this link :

http://www.mytutorialcafe.com/

After you learn you will find that C is more easy than assembler.

I've already develop the moving message but using AVR and my compiler code

vision avr, if you want the reference I can send it to you.
Thanks for alot for your nice reply.

I would really like you to help me in this regard, Please share with me your moving message display project, believe me I have a craz to make this project but i dont have any help to do so. I am a bobbiest not for commerial use. plz help me
 

Hii Sn_Burki,

I think you've already learned c, what do you think.

Here is the sample project , just check it and ask if you have the problem.

schematic :




Here i the sample code (remeber use codevison avr okay) :

Maincode and header matrix file. This project use keyboard for input character and LCD for display the character before it run at the running matrix.


Hope this help u
 

Thank you The_balistic for you response,
No I dont know about C languge and have no idea of it that how to start with C, How to compile it etc because the site https://www.mytutorialcafe.com/ is not working. Please tell me the most simple and easy way.

secondly the project you have uploaded doest it work??? I mean did you made it? how to run it on assembly?
 

Hell Mr The_balistic ,
Thanks for ur responce and help. I have studied the schematic and your C code "programs.zip". please let me know have you tested the hardware with the code? As i don't know C fully, it will be great help if you upload assembly code if you have.
Thanks again
S.K.SAHOO
 

i dont know which desktop program you use , but i do my 8051 projects at KIEL software so in KIEL at the lift of screen you will fine (Target1) press right click for (Sorce group)icon you will find (option of Target) as figure and mark at (creat HEX file)

 

KiranVSutar said:
Hi sn_burki,
You can write the above code in Assembly.
If you do not understand the above code, then post your display routine (ISR).
I will modify it to scroll the messages, and post it back here.

Please see to it that you comment the code, so that it will be easy for others (also) to understand it.
thank KiranVSutar

I think you can really help me. I m trying my best to understand C as working in C is easy. in your code you have mentioned how to scan but you did not mentioned how it will pick the letter from memory and display and afterward scrol it??? can you please help me some more on your code???
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top