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.

A Problem with Dot matrix display

Status
Not open for further replies.

ibrahim03

Full Member level 1
Joined
Sep 29, 2005
Messages
99
Helped
5
Reputation
10
Reaction score
2
Trophy points
1,288
Activity points
2,335
cd4050 application

I am making a small test project for 8x8 dot matrix display using AT89S52 microcontroller and i am having some problems. Currently i am using only a single display (the project is on a breadboard(s) ). All went well, the message was scrolling fine on the display until i decided to use buffers to increase the brightness(the display was not bright enough). I used the CD4050B non inverting buffers, the problem is that when i give four or more inputs through the buffer the display suddenly goes blank after a second or so. I cant understand whats the problem. Can anyone please help me out ?

P.S I want to use buffers only to increase the brightness so please dont suggest transistors

:!:
 

I don't think CD4050 is a good choice to drive anything; it is just a buffer (typical application includes CMOS to TLL or CMOS at a Lower VDD), and, to increase the output current, what you need is a driver ..
Forgive me if I ask this question, but are you aware that in CD4050 the Vdd pin is pin nr 1 , not 14?
Maybe this is the reason the display goes off?

However, if you don't want to use discrete transistors, or transistor arrays, then the other option is to employ typical drivers, such as, for example,7407 (open collector output - good for sinking current), or for both, sinking and sourcing, consider 74HCTXX, 74ACQ (or similar) buffers/drivers (CD/SN74HCT241: https://focus.ti.com/lit/ds/symlink/cd74hct241.pdf ), and even paralleling them to increase output current(s) capability ..

Regards,
IanP
 

Hi,
good way is choice 74HC595, use shift register mode of 89S52.
Hai
 

I don't think CD4050 is a good choice to drive anything; it is just a buffer (typical application includes CMOS to TLL or CMOS at a Lower VDD), and, to increase the output current, what you need is a driver ..
Forgive me if I ask this question, but are you aware that in CD4050 the Vdd pin is pin nr 1 , not 14?
Maybe this is the reason the display goes off?

However, if you don't want to use discrete transistors, or transistor arrays, then the other option is to employ typical drivers, such as, for example,7407 (open collector output - good for sinking current), or for both, sinking and sourcing, consider 74HCTXX, 74ACQ (or similar) buffers/drivers (CD/SN74HCT241: h**p://focus.ti.com/lit/ds/symlink/cd74hct241.pdf ), and even paralleling them to increase output current(s) capability ..

Regards,
IanP

No I have used the right pin for vdd (I saw it from the data sheet). Let me elaborate my problem a little. I have used only a single display, i have scanned the columns with a delay of 1ms and have sent the data on the rows. In the
8x8 display which i have used , rows are active high and columns are active low
(the rows are sourced and columns are sinked). Without the buffer everything is fine except that the brightness is very low. When i give one row input through the buffer, one row is bright (thats normal), when i give two inputs two rows are bright, uptil three rows it is fine but when i give the fourth row input through the
buffer, the display is on for 2 or 3 seconds(it scrolls forward one or two columns) and then everything goes blank. Then when i reset the microcontroller,again the display is on for 2 or 3 seconds and again blank !
My guess is that there might be a problem with the amount of current drawn from the microcontroller but I cant figure out the real problem and I dont know how to fix it :!: Can you please help me out ?
 

If you try to drive rows by buffers, what about columns?
Maybe you should connect buffers to coulmns and try again ..
Really, it doesn't make sense that whithout buffers this circuit is running correctly, except for brightness, of course ..
I would like to see the sketch of your circuit. Could you post it?

Regards,
IanP
 

Hi ,
Unused inputs of CMOS ics should be connected to ground .Did u take care of that?
 

Hi,

Try to drive the columns with ULN 2803 !
 

I am uploading the .rar file containing my code and the schematic diagram(bitmap and the proteus, file in which the schematic is made). I use the ASEM-51 assembler to assemble my code. Please check it and if you can find the problem tell me what i am doing wrong.
 
  • Like
Reactions: waja28

    waja28

    Points: 2
    Helpful Answer Positive Rating
Where are the current limiting resistors to the LEDs...?
You are effectively killing the 4050/89S52 this way.
 

CD4050B it's not able to provide the requested source current for multiplexed LED display, even if the gates are parallel connected.
You must use either 16 NPN transistors or one ULN2803 (as suggested by HUGo, driven by port P1 outputs) and 8 NPN transistors for rows.
and obvious 8 resistors for current limiting (a value of 220R would be fine).
A small change in the code is a must since the ULN2803 must be biased.
Thus, MOV P1,#0FEh ; Put in the initial data of column
must be changed to MOV P1,#01h
 

    ibrahim03

    Points: 2
    Helpful Answer Positive Rating
Where are the current limiting resistors to the LEDs...?
You are effectively killing the 4050/89S52 this way.

I forgot to show the resistors in the schematic. Sorry !!. I did attach current limiting resistors of 680Ω in my actual circuit.

CD4050B it's not able to provide the requested source current for multiplexed LED display, even if the gates are parallel connected.
You must use either 16 NPN transistors or one ULN2803 (as suggested by HUGo, driven by port P1 outputs) and 8 NPN transistors for rows.
and obvious 8 resistors for current limiting (a value of 220R would be fine).
A small change in the code is a must since the ULN2803 must be biased.
Thus, MOV P1,#0FEh ; Put in the initial data of column
must be changed to MOV P1,#01h

I think silvio is right and maybe CD4050B is not able to provide the required source current for multiplexed LED display so I have decided to give it up. Maybe I will try the ULN2803 or the buffers suggested by IanP.

Is there any formula for the current required by the dot matrix displays. Such as in multiplexed 7 segment displays the segment current is 'n' times the current for a single segment where 'n' is the no. of displays. Is there any such formula in dot matrix displays ?

Also in the data sheet of ULN2803 it says that it is a Darlington Transistor array, can ordinary transistor arrays be used here ? if yes then please suggest any.
 

ibrahim03 said:
Is there any formula for the current required by the dot matrix displays. Such as in multiplexed 7 segment displays the segment current is 'n' times the current for a single segment where 'n' is the no. of displays. Is there any such formula in dot matrix displays ?

Check this:
**broken link removed**
 

Check this for better project "A 10-character display for the Elektor Flash Micro board" :
h**p://www.elektor-electronics.co.uk/Default.aspx?tabid=28&year=2003&month=11&art=50477
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top