LCD (JHD1602A) is not displaying expected data

Hello Every One,

I buy a LCD (jhd1602A) and connected to my arduino uno.
Connections are -
LCD Arduino
Pin 1 - Ground GND
Pin 2 - +5V 5V
Pin 3 - Contrast Adjustment 5v -> 10k(ohm) -> pinNo 3(Vo of LCD) -> 900(ohm) -> GND
Pin 4 - H/L Register Select digital pin no 12.
Pin 5 - H/L Read/Write GND
Pin 6 - H/L Enable digital pin no 11.
Pin 11 digital pin no 5
Pin 12 digital pin no 4
Pin 13 digital pin no 3
pin 14 digital pin no 2

Then i run arduino example code.

#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
  lcd.begin(16, 2);
  lcd.print("hello, world!");
}

void loop() {
  lcd.setCursor(0, 1);
  lcd.print(millis()/1000);
}

but, on arduino instead of getting "hello world !" and milli() value, i got some junk characters, like "-> ?#" .
can any body suggest, where i am wrong.?

... but, on arduino instead of getting "hello world !" and milli() value, i got some junk characters, like "-> ?#" .
can any body suggest, where i am wrong.?

The characters may look like junk to you but they could give a clue to your problem if we knew exactly what they were.

We have to know exactly what characters were sent to the module and exactly what characters showed up on the display. It would also help if there was no code in loop().

/#include <LiquidCrystal.h>

/LiquidCrystal lcd(RS, E, D4, D5, D6, D7);
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);      // put your pin numbers here

void setup()
  {
  lcd.begin(16, 2);                          // put your LCD parameters here
  lcd.print("hello, world!");
  lcd.setCursor(0,1)
  lcd.print("it works!");
  }

void loop()
  {
  }

Don

I connected lcd with arduino as you suggested in below code and i also recheck the connections.
but it is still not working. :frowning:

#include <LiquidCrystal.h>

//LiquidCrystal lcd(RS, E, D4, D5, D6, D7);
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);      // put your pin numbers here

void setup()
  {
  lcd.begin(16, 2);                          // put your LCD parameters here
  lcd.setCursor(0,0);
  lcd.print("hello, world!");
  lcd.setCursor(0,1);
  lcd.print("it works!");
  }

void loop()
  {
  }

Thank you

The characters may look like junk to you but they could give a clue to your problem if we knew exactly what they were.

We have to know exactly what characters were sent to the module and exactly what characters showed up on the display....

What part of the above did you not understand?

Don

What part of the above did you not understand?

sir,
it is not displaying anything on lcd screen.
I followed a tutorial suggested by you on below thread.
http://forum.arduino.cc/index.php?topic=20499.0
and done wiring based on
Arduino Tutorial - connecting a parallel LCD.

my lcd back light is glowing, it means that my lcd and bread board doesn't have any problem.
and i also checked the voltages on lcd d4,d6,d7 pin. and it around 2.5 to 3v ( fluctuating).
but on d5 voltage is around 4 to 4.25v(fluctuating).
is there any problem on d5 and because of this lcd is not showing any result? :frowning:

I followed a tutorial suggested by you on below thread.

That thread is more than three years old. The tutorial has changed since then and I no longer refer people to it since (the last time I looked) it is now geared specifically to devices that they sell.

my lcd back light is glowing, it means that my lcd and bread board doesn't have any problem.

No. This means that your power supply is working, your backlight is functioning, and the part of the breadboard that you are using for the backlight is ok.

and i also checked the voltages on lcd d4,d6,d7 pin. and it around 2.5 to 3v ( fluctuating).
but on d5 voltage is around 4 to 4.25v(fluctuating).
is there any problem on d5 and because of this lcd is not showing any result?

Voltage readings on the LCD signal leads are meaningless.

Have you followed this step-by-step outline that I have provided in some recent threads?

===================================================

(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 only 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.

If you still don't get a display then make sure that your wiring matches the numbers in the descriptor (or vice versa).

//LiquidCrystal lcd(RS, E, D4, D5, D6, D7);
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);      // put your pin numbers here

If you get a display but it is garbled or has some other problems then try again with a 'static' sketch, one that displays a simple message on the top row of the display and then stops. All of your code should be in setup() and loop() should be empty between the brackets.

If you are still having problems then we need to see a photograph of your setup that clearly and unambiguously shows all of the connections between your Arduino and your LCD module. We also need a copy/paste version of the code that you are actually using, not a link to the code that you think you are using.

Don

Thank You floresta for your help.
its working now. :slight_smile:
+1 karma.

Hi.
Could you please tell us what was wrong ?
Other people that run in similar problems can learn from what you found out and would need less time to figure out what happened, reading this thread.

Hello MAS3 !!
I follow the steps suggested by Floresta.

(2) Get the power and contrast working properly. This involves only 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.

In above step my lcd was not showing dark square on its first row, then i check the power supply using Multimeter and found a fault in my bread board. after resolving this issue i follow rest steps (3,4,5). after all this lcd start working.
so i suggest, follow step 2 and see whether it is producing dark square.