I am using this tutorial and it seems like my liquid display does not display characters. I followed his instructions on pin assignments and the alteration in LiquidCrystal lcd (7, 8, 9, 10, 11, 12) and all it does was power up. Can someone give me advice on this one please?
I can't display "Hello world!"
For less than 2 bucks.
I followed his instructions ...
He's a she.
and all it does was power up.
The Adafruit tutorials are generally pretty good so without seeing your code and a picture of what that code produces, along with a picture of your setup we can't determine what is wrong.
Here is my generic step by step approach that should work:
(1) If the module has a backlight then get it working properly. This involves only pins 15 and 16 on most LCD modules. 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 most LCD modules. You should be able to just barely 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.
Troubleshooting:
If you have a 16x1 display and there are blocks only on the left half of the row in step 2 then use
lcd.begin(8, 2);
in your sketch.
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.
#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()
{
}
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
cjdelphi:
For less than 2 bucks.
. . .
For less than 2 bucks he may just exchange one set of problems for another. Have you seen all the posts relating to getting I2C adapters to work?
Also - that board claims to do IIC/I2C/TWI/SPI. Now the first three are all the same but does it really also do SPI?
Don
floresta:
cjdelphi:
For less than 2 bucks.
. . .For less than 2 bucks he may just exchange one set of problems for another. Have you seen all the posts relating to getting I2C adapters to work?
Also - that board claims to do IIC/I2C/TWI/SPI. Now the first three are all the same but does it really also do SPI?
Don
You solder it on, done....
The chip is just a shift register controlled via scl/sda ... I've had no issues at all with them.
floresta:
I followed his instructions ...
He's a she.
and all it does was power up.
The Adafruit tutorials are generally pretty good so without seeing your code and a picture of what that code produces, along with a picture of your setup we can't determine what is wrong.
Here is my generic step by step approach that should work:
(1) If the module has a backlight then get it working properly. This involves only pins 15 and 16 on most LCD modules. 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 most LCD modules. You should be able to just barely 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.
Troubleshooting:
If you have a 16x1 display and there are blocks only on the left half of the row in step 2 then use
lcd.begin(8, 2);
in your sketch.
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.
#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()
{
}
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
The same result sir. I am using QC1602A LCD module and ATMega1281 MCU.. I think there's something wrong with my LCD?
LCD: http://www.dealsmachine.com/best_182864.html
I followed your advice and still the same result.
I followed your advice and still the same result.
You didn't follow the last paragraph of my advice.
Don
floresta:
I followed your advice and still the same result.
You didn't follow the last paragraph of my advice.
Don
I am not familiar with that particular Arduino type board. Does it have pins to connect it to the underlying solderless breadboard? If not then how do you expect the signals to get from the microprocessor to the LCD?
Don
floresta:
I am not familiar with that particular Arduino type board.[/quote]It's ATMega1281 Board sir.
floresta:
Does it have pins to connect it to the underlying solderless breadboard? If not then how do you expect the signals to get from the microprocessor to the LCD?Don
Yes. It has pins underneath sir. I pinned it down on a breadboard.
I do not see a contrast pot connected to pin 3.
I do not see a contrast pot connected to pin 3.
That would definitely cause a blank screen.
If you do not have a potentiometer then try connecting pin 3 to GND. This isn't ideal but at least you will be able to determine if your LCD is functioning.
I guess you didn't really bother following the procedure I outlined in reply #2. Did you pay any attention to the note after step 2?
"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."
Don
EDIT:: Removed thje post.
I will read all the threads for "LCD Blocks" and solder the LCD module and will come back if the problem persists.
sometimes when every thing is fine and you have already double checked the connections, the problem might be in soldered connections make sure the solder is properly connected with the copper, use some soldering paste.
i had the same problem
vishwa_evo:
I will read all the threads for "LCD Blocks" and solder the LCD module and will come back if the problem persists.
And with the LCD module not actually connected as is clear in the photograph, it is not at all surprising it did not work.
But that was well over three years ago. One suspects that when he got the soldering iron and connected the display, he got it working and had no more to say.