Go Down

Topic: LCD not working with arduino powered (Read 3012 times) previous topic - next topic

when i power up my arduino, my lcd will only light up and not display anything, instead it will keep flashing dark boxes.

is my lcd not working and how do i troubleshoot it?

Nick Gammon

We are going to need more detail.


  • Which Arduino?

  • Which LCD? (part number or link to it)

  • How did you connect them?

  • What sketch (code) are you running?

  • A photo might help if there is doubt.



How to use this forum
Please post technical questions on the forum, not by personal message. Thanks!

More info:
http://www.gammon.com.au/electronics

#2
Sep 10, 2013, 06:34 am Last Edit: Sep 10, 2013, 06:39 am by ArchDemise Reason: 1

We are going to need more detail.


  • Which Arduino?

  • Which LCD? (part number or link to it)

  • How did you connect them?

  • What sketch (code) are you running?

  • A photo might help if there is doubt.



How to use this forum



-Arduino Uno
-LMB162A
-code
Code: [Select]
/*
  LiquidCrystal Library - Hello World

Demonstrates the use a 16x2 LCD display.  The LiquidCrystal
library works with all LCD displays that are compatible with the
Hitachi HD44780 driver. There are many of them out there, and you
can usually tell them by the 16-pin interface.

This sketch prints "Hello World!" to the LCD
and shows the time.

  The circuit:
* LCD RS pin to digital pin 12
* LCD Enable pin to digital pin 11
* LCD D4 pin to digital pin 5
* LCD D5 pin to digital pin 4
* LCD D6 pin to digital pin 3
* LCD D7 pin to digital pin 2
* LCD R/W pin to ground
* 10K resistor:
* ends to +5V and ground
* wiper to LCD VO pin (pin 3)

Library originally added 18 Apr 2008
by David A. Mellis
library modified 5 Jul 2009
by Limor Fried (http://www.ladyada.net)
example added 9 Jul 2009
by Tom Igoe
modified 22 Nov 2010
by Tom Igoe

This example code is in the public domain.

http://www.arduino.cc/en/Tutorial/LiquidCrystal
*/

// include the library code:
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("hello, world!");
}

void loop() {
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 1);
  // print the number of seconds since reset:
  lcd.print(millis()/1000);
}

http://www.youtube.com/watch?v=BWSlINIEhqg&feature=youtu.be

i added a video showing the error of the lcd

HazardsMind

#3
Sep 10, 2013, 07:48 am Last Edit: Sep 10, 2013, 07:52 am by HazardsMind Reason: 1
That looks like either bad or loose wiring, check all your connects again. Make sure they are nice and solid.

However, that is just a guess. If you have a data sheet on the LCD, please provided it.
My GitHub:
https://github.com/AndrewMascolo?tab=repositories


That looks like either bad or loose wiring, check all your connects again. Make sure they are nice and solid.

However, that is just a guess. If you have a data sheet on the LCD, please provided it.


no datasheet provided when i got this , cause i got it from school

+ i used new wires and connected everything in order howerer it is still not working

HazardsMind

#5
Sep 10, 2013, 08:56 am Last Edit: Sep 10, 2013, 09:05 am by HazardsMind Reason: 1
Were you give any kind of wiring layout, what wire goes where, or are you looking at other LCD wiring diagrams?

How about this, if you just connect the voltage lines, and screen contrast line, do you see the 16x2 boxes?

Added:
Do a search for the LCD part number, and take a look at the PDF file.
My GitHub:
https://github.com/AndrewMascolo?tab=repositories


Were you give any kind of wiring layout, what wire goes where, or are you looking at other LCD wiring diagrams?

How about this, if you just connect the voltage lines, and screen contrast line, do you see the 16x2 boxes?

Added:
Do a search for the LCD part number, and take a look at the PDF file.


-no

-yes but very dim

-im using lm162ba


floresta

#7
Sep 10, 2013, 01:04 pm Last Edit: Sep 10, 2013, 01:08 pm by floresta Reason: 1
That looks like an ordinary run-of-the-mill LCD so the connections are probably the same as shown in most tutorials.  

I can't tell much about the wiring (other than it looks terrible) from your video but it appears that you may not have provided power to pins 1 and 2.

Here's a generic approach to getting your device working.  If you need any more help we will need a still photograph that clearly and unambiguously shows all of the connections between your Arduino and your LCD.

(1) If the module has a backlight then get it working properly.  This involves only pins 15 and 16 on your LCD module.  Make sure to use a current limiting resistor if there is none on the LCD module.

(2) Get the power and contrast working properly.  This involves pins 1, 2, and 3 on your LCD module.   You should be able to see blocks on one row of a two row display and on two rows of a four row display.

NOTE:  The Arduino has not been used yet, except as a possible source for the power needed for the first two steps.    Do not try to go any further until this is working.  If you don't see the blocks then no amount of program code will help.

(3) Connect the LCD R/W pin (pin 5) to GND.

(4) Connect the six control and data wires between your LCD module and your Arduino.

(5) Upload your sketch and it should work.


Don


That looks like an ordinary run-of-the-mill LCD so the connections are probably the same as shown in most tutorials.  

I can't tell much about the wiring (other than it looks terrible) from your video but it appears that you may not have provided power to pins 1 and 2.

Here's a generic approach to getting your device working.  If you need any more help we will need a still photograph that clearly and unambiguously shows all of the connections between your Arduino and your LCD.

(1) If the module has a backlight then get it working properly.  This involves only pins 15 and 16 on your LCD module.  Make sure to use a current limiting resistor if there is none on the LCD module.

(2) Get the power and contrast working properly.  This involves pins 1, 2, and 3 on your LCD module.   You should be able to see blocks on one row of a two row display and on two rows of a four row display.

NOTE:  The Arduino has not been used yet, except as a possible source for the power needed for the first two steps.    Do not try to go any further until this is working.  If you don't see the blocks then no amount of program code will help.

(3) Connect the LCD R/W pin (pin 5) to GND.

(4) Connect the six control and data wires between your LCD module and your Arduino.

(5) Upload your sketch and it should work.


Don


erm, does excess voltage or current kills the lcd?

Yes, it does (in extreme cases). I'm just not too sure what it has to do with what he suggested you to do.

nothing actually, i figured out that might be the reason my lcd is not displaying any character

Try this:
- GND to pin 1, 3, 16.
- 5V to pin 2 and 15.
See if you get solid blocks on the first row.
If you do then continue to steps 3 and further in Don's suggestions.

floresta

Quote
- 5V to pin 2 and 15.

Don't you think he should be concerned about limiting current to the backlight?  I would.

Don

Yes, probably. Some LCDs have these built in, but not all.
I think that for a quick test it should be OK, though.

So to correct my previous post.
Pin15 - 5v
Pin16 --> 100 ohm resistor --> GND.


i tried and backlight lits up but no solid boxes

Go Up