# HELP! Is my LCD broken?

Hey, people, i need help.
I have an lcd, and I am using it in a reaction timer project. What it is SUPPOSED to do is this: The led is off for a random amount of time. When it tuns on, the two players race to press their button as fast as they can. If a foul occurs, then a low tone is played and the lcd shows who fouled. If it is not a foul, the LCD shows who won and what their time was.
Here is the code

``````/* Reaction Timer
By- Racerdude24
This is a game where there is an led and two buttons. as soon as the led lights up, the first player to push the button wins. If pushed before that, it is a foul.  If won, the lcd shows who
along with the winner's time. If foul, it shows who.
*/
// wiring:
// ----------------^ means on lcd, ~ means on arduino--------------------

/* *Ground & 5v to pins 1^ & 2^, respectively
*2K pot, 2 ends to 5v & Ground, wiper to pin 3^
*Digital pin 7~ connected to pin 4^
*Pin 5^ connected to ground
*Pin 6^ connected to digital pin 8~
*Pin 11^ connected to digital pin 9~
*Pin 12^ connected to digital pin 10~
*Pin 13^ connected to digital pin 11~
*Pin 14^ connected to digital pin 12~
*Pin 6~ to 5v by pushbutton Switch
*Pin 6~ to ground by resistor
*Pin 5~ to 5v by pushbutton switch
*Pin 5~ to ground by resistor
*Pin 13~ to ground by LED
*Speaker connected to Pin 4~ & Ground
******************************************** These next two pins will only be on an lcd with a backlight. If there is no backlight, ignore these next 2 steps.
*Pin 15^ connected to 5v via 220 ? resistor
*Pin 16^ connected to ground

``````````To adjust contrast, twist the 2K potentiometer```````````
*/
#include "pitches.h"

#include <LiquidCrystal.h>;
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

const int led = 2;                   //the pins used.
const int player1 = 6;
const int player2 = 5;
const int speaker = 4;

int pressed = 0;

int currentmillis = 0;
int time = 0;

void setup(){
Serial.begin(9600);
lcd.begin (16, 2);
time = random(1000, 6000);
}

void loop(){
currentmillis = millis();
if (currentmillis > time){                  //if the delay is over
ready = 1;                       //make any following presses non-foul
digitalWrite(led, HIGH);              //turn the led on
}
if (digitalRead(player1) == HIGH){     //if player 1 pushed his button
if (pressed == 0){                   //was something pressed already? if not...
if (ready == 1){                   //is it a foul? if not...
pressed = 1;                     //keep the other player from pressing
lcd.print("Player 1 wins!!");     //self explanatory
lcd.setCursor(0, 1);
lcd.print((float)(currentmillis - time)/1000);//print the reaction time
tone(4, NOTE_C4, 1000);           //play a high tone

}
else{                              //if it is a foul
lcd.print("Foul on player 1");      //also self explanatory
pressed = 1;                        //keep other player from pressing
tone(4, NOTE_C3, 1000);              //play low tone
}
}
else{

}
}

if (digitalRead(player2) == HIGH){         //this code is the same as player 1's, with a few changes
if (pressed == 0){
pressed = 1;
lcd.print("Player 2 wins!!");
lcd.setCursor(0, 1);
lcd.print((float)(currentmillis - time)/1000);
tone(4, NOTE_C4, 1000);
}
else{
lcd.print("Foul on player 2");
pressed = 1;
tone(4, NOTE_C3, 1000);
}
}
}
}``````

However, if you look at the video, you see that the LCD is not showing any characters. I don’t think it is the code, because it worked before. Am I applying too much voltage to it? The Pic shows that I am using 3.3v, but beforehand I was using 5v. Could that have damaged it?

I have no idea what the product number is, I just know it is made by samsung.
Some things it says on the back are:
*FCT 3135
*UC-16202-GNAR5-V97051503
*Samsung (logo)
*0052A

And lastly, A photo. (on attatchment)

All I need to know: Is it broken? and Can it be fixed?

Have you tried the hello world lcd example?

All I need to know: Is it broken? and Can it be fixed?

Maybe and maybe.

What shows up on your LCD when you remove all of the wires except those going to pins 1, 2, and 3?

It looks like the display changes when you press on the black frame around the glass. This indicates a poor connection between the display itself and the PC board.

Did you do a search for any of the things it says on the back of the display?

Don

P18F4550: Have you tried the hello world lcd example?

Yes, and the same thing happened

floresta: What shows up on your LCD when you remove all of the wires except those going to pins 1, 2, and 3?

The same thing. :~

floresta: Did you do a search for any of the things it says on the back of the display?[/color]

Don

Yes, and I couldn't find anything. The reason is, I didn't actually buy this, I dug it out of some old phone. That's why I don't know the part number.

Remove all of the wires except those going to pins 1, 2, and 3 and then put pressure on the black frame around the glass. If you get the expected single row of blocks then you have a poor connection between the display itself and the PC board. You will notice several places where tabs from that frame protrude through the PC board and you can try twisting them some more to tighten the connection. You may have to melt some solder first.

Also, I have some ribbon cable similar to the type that you are using. Mine does not really make secure contact with the breadboard so that may be an additional problem in your case as well.

Don

Yes, and I couldn't find anything.

You have to be able to pick out what to search for, in this case 'UC-16202'.

I found one 'datasheet' here www.britestone.com/shop/upload/DN/LCD/UC-16202.pdf but all it does is confirm that the connections etc. are similar to all the other LCD modules that are around.

Don

floresta: Also, I have some ribbon cable similar to the type that you are using. Mine does not really make secure contact with the breadboard so that may be an additional problem in your case as well.

Don

Nah, that's not the problem. I used a multimeter to check the resistance between the top of the ribbon and another wire, it was fine

floresta: Remove all of the wires except those going to pins 1, 2, and 3 and then put pressure on the black frame around the glass. If you get the expected single row of blocks then you have a poor connection between the display itself and the PC board. [/quote] Yeah, I tried that, I got the single row SOMETIMES when I pressed it, however the squares looked like there was a line moving from bottom to top when I pressed it.

floresta: You will notice several places where tabs from that frame protrude through the PC board and you can try twisting them some more to tighten the connection. You may have to melt some solder first.

I tried that, but it STILL didn't work! What do you mean by "melt some solder"?

I used a multimeter to check the resistance between the top of the ribbon and another wire, it was fine.

Your problem is intermittent. At some times it may be fine and at other times not so fine.

What do you mean by "melt some solder"

Some boards may have the tabs secured by a blob of solder.

The Pic shows that I am using 3.3v, but beforehand I was using 5v

I forgot about this part. What made you switch to 3.3 Volts? Most LCD modules require at least 4.5 Volts or so and we now know that this one does as well. The data sheet also indicates that pin 3 should typically be at about 0.5 Volts.

Don

floresta: What made you switch to 3.3 Volts? Most LCD modules require at least 4.5 Volts or so and we now know that this one does as well. The data sheet also indicates that pin 3 should typically be at about 0.5 Volts.

I changed it back because of the "data sheet" you sent me. I at first I thought that 5v may be overpowering it, so I changed it. Yet it works with neither. :(

Okay, I realized something. The LCD doesn't show anything unless I accidentally short a connection on the back. So in that case it might have nothing to do with the frame. (face palm)

I'm not sure if bumping is allowed. I just want help. If bumping is not allowed, please just delete this post and I will buy another lcd :).