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.

[PIC] lcd shows black boxes after some days

Status
Not open for further replies.

M.Imran Ali

Member level 5
Joined
Sep 28, 2012
Messages
86
Helped
3
Reputation
6
Reaction score
3
Trophy points
1,298
Activity points
1,814
I am doing a project and using 20X4 lcd with pic18f452 . It works for some days well but after some days lcd starts to show black boxes , or illegal characters . What can be the problem ? Hope you can help me
 

Are the black boxes over every character on the screen? which would indicate a contrast problem or faulty LCD(show screen shots). As for the illegal characters I would suspect a software problem such as a stack overflow etc.
 

Sorry to interrupt this thread, but i also have a similar problem .. I have a 16x2 LCD which was working fine .. But for some days, the LCD is showing partial Black Boxes (pixels) over every character .. I also changed the contrast POT and rechecked my connections, but no change .. :(
 

Sorry to interrupt this thread, but i also have a similar problem .. I have a 16x2 LCD which was working fine .. But for some days, the LCD is showing partial Black Boxes (pixels) over every character .. I also changed the contrast POT and rechecked my connections, but no change .. :(

Hi,

What value Pot are you using ?

Is your + 5v power supply stable ?

Are you using the backlight, if fitted and how is it powered ?
 

Hi,

What value Pot are you using ?

Is your + 5v power supply stable ?

Are you using the backlight, if fitted and how is it powered ?

I used 10K POT and also tried by using 5K POT .. Yes, 5V supply is stable .. Yes, i am also using Backlight, backlight is powered by the same Vcc and GND which are used to power the LCD ..
 

I used 10K POT and also tried by using 5K POT .. Yes, 5V supply is stable .. Yes, i am also using Backlight, backlight is powered by the same Vcc and GND which are used to power the LCD ..

Hi,

That all sounds ok, and if your text is still actually visible and correct, then it sounds like a fault on your contrast circuity.

Its so easy to get a short on those lcd connectors, or a connection break, though hard to spot.

If you cannot see any such connection error then can only suggest you try a replacement lcd.
 

Hi,

That all sounds ok, and if your text is still actually visible and correct, then it sounds like a fault on your contrast circuity.

Its so easy to get a short on those lcd connectors, or a connection break, though hard to spot.

If you cannot see any such connection error then can only suggest you try a replacement lcd.

The text is not very clear. there are dots all around each character :( .. Contrast Circuitry is just a 5K POT :D ..
 

Character LCD,s are not analog types and you send bytes to be decoded, so your LCD voltage is not within spec for noise or value or is susceptible to ESD discharge causing ground shift or signal spikes. Clean up your interface with braided or foil shield.. check ripple on supply under all conditions.
 

As I wrote earlier, reinitialize the LCD from time to time.
You have noise problem, that's why you observe additional pixels around characters.
Get rid of noise and reinitialize LCD at regular intervals.
 

As I wrote earlier, reinitialize the LCD from time to time.
You have noise problem, that's why you observe additional pixels around characters.
Get rid of noise and reinitialize LCD at regular intervals.

I reinitialized after some intervals of time , it works for some days and than same problem again after some days.
 

Your "some intervals" should be regular intervals, eg. 1 minute or so.

ya i am doing it regularly ? But no effect

- - - Updated - - -

Suggest me if i use buffer like CD4050 between lcd and micro controller than what will be the effect ?
 

Hi,

Cannot see adding extra chips will help.

Might be more useful if you show your complete circuit including any Loads you are switching.

If its just a simple micro and lcd with little else then three things to try.

1. Find a totally different program; example, one from the web thats nothing to do with your existing code, and run it in your chip / lcd and see if that works ok.

2. If not already doing it, run the hardware from a battery, no mains power at all, to prove its not power supply interference.

3. Try a different brand of LCD.
 
  • Like
Reactions: th3gr8

    th3gr8

    Points: 2
    Helpful Answer Positive Rating
No extra chips will remedy your problem.

post a piece of your code so we can see how you are (re)initializing your LCD.
I have a display with 6 LED 7 segment displays, non multiplexed, 170mm height, DS1302 RTC and 2x16 LCD + 3 buttons for correcting the RTC.
LCD and buttons are separated from the rest of the circuitry and attached once in a while. As the LCD is attached while the rest of circuitry is working, it has to be initialized. I have no intentions to switch the circuit off and back on just to initialize the LCD.
I reinitialize the LCD "on the fly" once every minute, and it works without problem.
 

Maybe it is the LCD self problem.
Have a try with others from different manufactures.
 

How are your connection with the LCD display?

If you have an intermittent contact in the databus for some reason, you may write 'invalid' characters to the display. This fault may be thermal in nature, and may only come when the temperature is in the faulty range, or changing.

If you know which character was replaced with what, you may see a pattern in the fault.

In the normal text LCDs the first 8(16) character patterns are RAM based and user programable, and you may have anything on the screen if you write these character codes to the display, you will normally see only rubbish. These characters are duplicated in the codes 00-07 and 08-0F.
 

Unfortunatelly, my crystal ball has not yet arrived from polishing :-( to be able to pinpoint the source of gthe problem :-(
Show us a piece of your code where is clearly visible how you reinitialize the LCD.
 

Unfortunatelly, my crystal ball has not yet arrived from polishing :-( to be able to pinpoint the source of gthe problem :-(

Haven't you got one of the new LCBs (Liquid Crystal Ball) with no wipe surface? :lol:
 

count = count +1;
if(count>=200) {

lcd_init();
delay_ms(20);
lcd_putc('\f');
display_Screen(screen_num);
count =0;
}
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top