interfacing nokia 3510I color LCD with PIC16F628A

Status
Not open for further replies.

mdanh2002

Member
I recent purchased the Nokia 3510I LCD module from ebay eBay.com.sg: Nokia 3510I Color STN / CSTN LCD Module Display 51 MCU (item 200452329046 end time Mar 16, 2011 00:58:08 SGT) and tried to interface it with my PIC16F628A.

The pinout printed at the back of the module is as follows:

1. LED
2. SCLK
3. SDATA(MOSI)
4. NC (stands for Not Connected?)
5. REST
6. CS
7. GND
8. VCC

This is not the same with other pinouts I found on the net (others have VLCD, VBooster, VDigital, etc.). Nevetherless I tried to apply 3.3V to LED and VCC, and connect GND and got a small LED mounted on the LCD module to lit up.

But that's all I can do. I used the source code provided by the ebay seller, adapted it to compile for the PIC and run it but nothing shows on the LCD. The whole display is still black, except for the small LED which is lit up. My connection is as follows:

PB0 --- SCLK
PB1 --- SDATA
PB2 --- REST
PB3 ---. CS

To convert between 5V and 3.3V, I used a voltage divider with 20k and 39k resistors in series.

But as you can see, it's not working. Any advice on how to make it work, or is it because I got a faulty module? My thought was that even without any initialization code, at least the LCD panel should light up when power is applied.

Thanks for any advice.
 
Last edited:
Thanks for your reply. I used the seller's sample source code and change it a little to compile for my PIC (see attached). I observe with an oscilloscope and my voltage divider seems to work well converting from 5V to 3.3V. Not sure what's wrong here.
 

Attachments

  • 3510i.c
    6.3 KB · Views: 640
Got it working. I removed the voltage divider and used a 78L33 to get the 3.3V for the LCD supply. The signal input for the LCD can be as high as 5V as long as there is a 10k resistor in series. However, with my connection, the LCD voltage level is only 3.3V and not enough to register as a logic '1' in the PIC. Therefore I can't get the LCD response and have to make certain assumptions and hard-code it to make it work. I removed function readdata() in the code which gets the LCD type (either 'A', 'B', 'C' or 'D') and hard code it to 'B' (correct for my LCD module).

I think the voltage divider using 1/4W resistor and does not provide enough power for the LCD, which explains why the LED is so dim. Furthermore, the LCD internal resistance may affect the output voltage. I checked with an oscilloscope, with the voltage divider approach, the output waveform is all distorted and therefore incorrect when the LCD is connected, explaining why it didn't work earlier.
 
Many many thanks, I really needed that code and wanted to run nokia LCD from PIC`16F628A ,Many thanks again
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…