LCD

I want to program the text to a 2 line 5 x 7 LCD module. But before I do that in a language I am experimental with just the LCD module with a push button for the clock or enable signal and some DIP switches for the data signals. When I finished setting up the LCD and proceed to input letters to the LCD, some letters are fine however some letters come out incorrectly. I adjust the DIP switches for the appropriate hi's and lo's for that letter however, when I clock the data into the LCD, a different character comes up and when I clock it again and again, I get different letters. I notice however that the letters that are different sometimes have similarities in the binary number either in the high nibble or low nibble. Is my LCD busted? It's a new one and took me ages to wire this thing up. I am using breadboard to hold it all together. What could be the source to this problem?

Reply to
wt
Loading thread data ...

Two possiblities:

1) Noise interference on the breadboard

2) Problem with your clock rate. Is it correct for the LCD?

Al

Reply to
Al

With regards to the clock rate, I'm manually clocking the data into the LCD with a pushbutton that has some hardware deboucing with it.

Reply to
wt

">>> and when I clock it again and again, I get different letters. I notice

Do you have pull up resistors on the data lines where the dil switch is connected?

Reply to
TT_Man

Yes but I'm actually using pull down resistors, does that make a difference? The configuration is a 10k resistor connects the data pin to ground and a switch is placed between the data pin and +5V.

Reply to
wt

You will definitely get a valid HI when the switch is ON, but what is the voltage at the input, when the switch is OFF? Try to measure that with a meter. Usually you put the resistor to +5V and the switch to ground because the input may have a pull up resistor built in or worse if the input is a "genuine" TTL input the is an inherent pull up resistor. A floating TTL input behave usually as a HI input. Cheers

wt skrev:

Reply to
Klaus (DK)

I'd agree, change the resistors to pull-ups and the switch bits to ground.

Reply to
TT_Man

According to this datasheet

formatting link
all the input pins except for E have a max of 250uA internal pullup current. 250uA across 10k is 2.5V. Even the typical value of 125uA gives 1.25V. So the problem is almost certainly that your '0' input value is too high. So on all the inputs except the E line, either lower the value of the pulldowns or switch to pullups (or just use the built-in pullups of the display).

Reply to
Mike Silva

Should we always use pullups instead of pulldowns in all digital electronics? Also, since the datasheet for this particular LCD is rather crappy, can we check to see if there are internal pullups in the LCD but using a logic probe? Thanks to all who have contributed to this post. You have all been moste helpful.

Reply to
wt

99% yes, pull-ups.
Reply to
TT_Man

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.