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.

Lcd backlight is bliking ?

Status
Not open for further replies.

Dilpreet Singh

Junior Member level 1
Joined
Jan 21, 2015
Messages
19
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
155
I HAVE 16*2 LCD Its backlight is turning on and off , but nothing is displayed on it ?
it happens when i change microcontroller's frequency in avr from 8mhz to 4mhz
at 8 mhz just blocks appear on lcd top row
VEE is connected throw potentiometer 5k and code was fine runing earlier two days on it
so code where can be problem now , can any one have idea ?
 

ok
BUT Same code was working before ?
how can this possible
 

May be your circuit is not able to provide enough current for LCD backlight. How are you powering the back light. Could you please attach the schematic so that we can help you better.
 

Cross check is your potentiometer work fine? I mean does it vary voltage on VEE pin?

May a problem be in potentiometer.
 

i even connect lcd vee with ground (to get max. contrast) even then nothing is printing on it

- - - Updated - - -

this is pic of circuit lcd.png

- - - Updated - - -

code is working well on isis proteus
 

There are couple of things you need to consider.

1] If your back light is flickering check the voltages at the L+ & L-.
If voltage is ok according to Datasheetthen, which LCD you r using, if it is jhd it happened with me
there is a problem with Lcd if you have spare one then you can check it by replacing.
2] You mentioned that one row is displaying(block), when i tries on 4 line display by increasing frequency only two rows are displayed(block) 1 & 3, which means there is a problem in lcd initialization.
check my code given below. Note that i m using 8bit data.
3] One more thing you can do if you checked above conditions and still your display is blank put variable resistor of 1k in contrast pin and change the resistance till you see the blocks on both array.

Code:
void lcd_init(void)
{
   en=0;
  lcd_cmd(0x30); 
   msdelay(2);
   lcd_cmd(0x38);                    // LCD 2 lines, 5x7 matrix.(Function set)
   msdelay(1);
   //lcd_cmd(0x0E);                   // display ON, cursor blinking.
   lcd_cmd(0x0C);                   // display ON, cursor off.
   msdelay(1);
   lcd_cmd(0x01);                   // clear LCD.
   msdelay(1);
   lcd_cmd(0x06);                  // increment cursor i.e. shift cursor to right.(Entery mode)
   msdelay(1);
   lcd_cmd(0x80);                  // line-1, position-0.	
   msdelay(1);
  
}

If you find helpful this post click help me button>>>
 

From your schematics you have no backlight connected. Please show a complete schematic.

I can't see that you do a busy check when writing to the LCD. To make the interface more resilient for speed changes, add the busy check to your write routine. This will increase the throughput when the LCD is faster than the delay you use, and keep the lcd in sync if it is slower than the delay.
 
Last edited:

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top