Maker Pro
Maker Pro

Connecting an LCD to my circuit

I currently have a PCF8548 LCD attached to my circuit in the following way

pp.JPG

However I have a 22K resistor for the 10K and NC is not connected. For the capacitors they are 100 micro farads I believe. The sheet said that the capacitors should be at least 1 micro farad and this was the only capacitors I could find around that were large enough. I am trying to reset the LCD so it displays blank instead of all black. When I set RES "LOW" the oscilloscope shows it going low (below zero?) then it is dragged back up very quickly by the capacitor it seems. This is not allowing my LCD to reset I think. But this is my first actual attempt at an I2C interface.
 

Harald Kapp

Moderator
Moderator
It's me again:
PCF8548 is the type of driver IC. That is only partly useful (for programming the driver). It is useless with regard to the pinout of the LCD assembly and any components and or circuits that are on the LCD assembly. What is the type of the complete LCD assembly?

Apart from that:
1) using a bigger capacitor is not always better. Bigger caps tend to have a larger series resistance which worsens high frequency behavior . Add a 100nF ceramiv capacitor in parallel to each elko.

2) Where does the signal to pull reste low come from? Why should it go below zero? Assuming (from your previous posts) that the reset signal comes from a microcontroller, it should be near 0 V, never below, maybe slightly above ( a few 100 mV at best). Did you connect ground of the LCD assembly to ground of the micro? Did you connect ground of the scope to ground of your circuit?

3) I do not see which capacitor should pull up the reset signal. At least in your schematic there is no cap connected to reset. Also, a capacitor alone cannot pull up a signal. You need an energy source for that, e.g. a voltage source plus a resistor.

What you observe looks like an error in either connecting the µC to the LCD or the scope to the signals. Or both.

Harald
 
Sorry about the delay in my response I was off enjoying my weekend. I am not sure what you mean by the fact that I need something else in addition to the PCF8548. When I decided to use this piece I was under the assumption that it was an all-in-one package given this excerpt:

The PCF8548 is a low power CMOS LCD controller driver,
designed to drive a graphic display of 65 rows and
102 columns. All necessary functions for the display are
provided in a single chip, including on-chip generation of
LCD supply and bias voltages, resulting in a minimum of
external components and low power consumption.
The PCF8548 interfaces to most microcontrollers via an
I2C-bus interface.

I have also read the data sheet more thoroughly and have arranged the circuit so that I ground VLCD because I am using a "high" voltage source. I have a USB powering the screen with 5 volts so I believe this is good enough. I have reduced my capacitors to 10 micro-farads (had to pick them up this weekend). However in this configuration my screen now does not light up. I am thinking that the screen needs more power so I may actually may need to use the internal charge pump capabilities offered in this LCD.

In regards to the negative voltage I read my scope wrong. The voltage floats around 3.3 volts and not zero so when I set my reset to low it went near zero then back to the 3.3 volts. I assumed and look where that lead.

The reset signal line I was following a previous schematic for another application and they made a direct line from the micro-controller to the LCD but I am thinking that they might have used an internal pull-up resistor.

I am going to ask a person who works on LCD's as his job and find out more but if you have any comments or recommendations please feel free to post. I will update later.
 
I figured out the poblem. The LCD has a certain time constraint. The reset conditions must be set within 1 micro-second of the initial power on of the LCD. I moved a few wires around and now I am able to reset the LCD to show a cleared screen.

Thanks again Harald. You should just be my mentor you know it all.
 
Lets call him my boss, he does not want me to use an I/O pin to power my LCD which is what I did so I can control my LCD power. This only allows me to reset when I have my program turn the power on and off. This is not the desired result. So I have my reset pin attached with a pull up resistor to the LCD line directly. Upon starting the program RES (reset) is floating and is then beginning pulled up in three distinct stages. the initial is very fast then it slows down in the remaining two increments. This all occurs in my header file because the first step in my main program is setting all pins in PORT B to low. I however need to have the pin either initially set to low and not floating (not sure that is possible) or get it up to a high state in a time frame of 1 micro second according to the reset picture in the spec sheet of the PCF8548. My program is taking about 21 micro seconds. any suggestions?
 
Top