Go Down

Topic: LCD T6963c display (Read 35278 times) previous topic - next topic


Oct 20, 2009, 04:32 am Last Edit: Oct 20, 2009, 04:41 am by sasaa Reason: 1
Hello i have a question about T6963c LCD's since i have a little project going on where in people can leave a msg om my desktop (trough 2x16 lcd) (check it!)

but I remembert that i had a larger lcd.
it's a DMF5005n PDF file and i would really love to connect that display if it is possible
i would even buy a arduino mega for it if needed just because I want to built it in my already modded pc case and show msg's temp's and fan speeds.
So if annybody could point/kick me in the right direction or even have a idea i would be pleased

I wanna switch from a 2x16 px LCD to a 64x240px LCD
do i need another controller maybe to interact with the display?

will update with pictures tomorrow!

Greets SaSaa



I've just linked a T6963C lcd to my arduino some days ago ... I've taken the library there : http://en.radzio.dxp.pl/t6963/  and adapted it to work correctly with a Duemilanove (I avoid using pins 0 and 1 ...). The problem is that it takes 8(data)+6(ctrl) pins to connect ... which is a LOT.

I'm trying right now to use PCF8574 (IO expander on I2C) to free all those pins and use only 2 pins (I2C). It's working for the CTRL part right now, but I have some problems with the DATA ?

But beside that, the full pins solution is pretty straight ... If you're interested :

GDt6963.h  http://www.mediafire.com/file/4uyyj54yo1u/GDt6963c.h
GDt6963.cpp http://www.mediafire.com/file/dwj2mqztloy/GDt6963c.cpp

The pinout I've used is :

Data : bits 0->7 : digital pins 2->9

Ctrl : WR : analog pin 0
Ctrl : RD : analog pin 1
Ctrl : CE : analog pin 2
Ctrl : CD : analog pin 3
Ctrl : RESET : analog pin 4
Ctrl : FS : analog pin 5

I hope this will help ...


Oct 20, 2009, 12:53 pm Last Edit: Oct 20, 2009, 11:00 pm by sasaa Reason: 1
Aaah cool.
thanks mate

i might buy a mega or a iluminati board t get more digitals pins.
this sure helps alot

greets SaSaa

Update:           .clickable.


so this should work :P  ::) ! ?
gonna try it tomorrow.

I'm sleepy :P


Sure, seems correct to me ...

Just one remark about the pin 4 (power supply for LCD) : check carefully, because I spend a lot of time having no correct result because of this pin. On my LCD, may be different for yours, it requires NEGATIVE voltage for the contrast ... so I need to create a little current inverser for that.

But I've seen T6963C LCD which had the inverter integrated in the LCD board ... just check carefully the doc. But your LCD board looks REALLY similar to mine ... so you probably need that as well.

For my needs I've used this : http://sound.westhost.com/project95.htm

And I use a PC power supply with a +5 and +12, I just invert the +12 so I can get my negative voltage. Mine requires a -7V to have a decent contrast.

You can find some pictures on my blog, but it's in french  :P ... http://domoduino.tumblr.com/

Good luck with your tests ...


Oct 21, 2009, 09:36 pm Last Edit: Oct 22, 2009, 12:58 am by sasaa Reason: 1
Thank god for google :P

anny possibility that you could post a simple helloworld to get me going :D


Oct 22, 2009, 01:02 am Last Edit: Oct 22, 2009, 11:47 pm by sasaa Reason: 1
I do have to make a negative power... :( shit :P !
Found this do in the pdf



Sorry for the late reply ... busy days  :P

Here we go :

Code: [Select]

#include <GDt6963c.h>

void setup()
     GLCD_Initalize(); // Initalize LCD
     GLCD_ClearText(); // Clear text area
     GLCD_ClearCG(); // Clear character generator area
     GLCD_ClearGraphic(); // Clear graphic area
     GLCD_TextGoTo(0,0);// set text coordinates
     GLCD_WriteString("Hello world !!! "); // write text

void loop() {
     GLCD_TextGoTo(3,3);// set text coordinates
     GLCD_WriteString("AaAaAaA"); // write text

     GLCD_TextGoTo(3,3);// set text coordinates
     GLCD_WriteString("BbBbBbBb"); // write text


I love you :P

not a good choice of words after stalking you for 2 days but WTH :P

I have found out that i have two of this display :P i found one in my basement during cleaning up :D

My mega should arive tomorrow :P

i got a warm fuzzy feeling (like chrismas And after ***) *ahum


Haha  ;) ... No problem about the stalking, it's my pleasure to help you.

I don' know exactly how the ports are mapped on the mega, you'll probably have to change some stuff in the .h file, depending on the ports you want to use.

Here is the info i've used for the arduino duemilanove : http://www.arduino.cc/en/Reference/PortManipulation, and here is the info I have about the mega : http://arduino.cc/en/uploads/Main/arduino-mega-schematic.pdf

As you'll use a mega, you can simplify the code as you don't need to split the data into 2 port and you can use one full port. It's not necessary, but it's cleaner ? Tell me if you need some help to do that ...



I will ask you :D
I'm still waiting for the mega.

Thanks btw, for all the info i will sum it up some day in my first post
with all the pictures and stuf like that
and than off course Credits to you!


I extended your update of the http://en.radzio.dxp.pl/t6963/ code to create a more versatile library.
1. Class T6963 (int horizontal pixels, int vertical pixels, int font width)
2. Font width for LCD is hardware controlled (ground it, or +5 VDC it), but the pin is still initialized.
3. For some reason my LCD doesn't need the Reset line hooked up.  There is a hardware solution to the reset signal that eliminates one pin usage but it screws my disp up.
4. Use at your own risk, I know barely enough to submit this post, much less be trusted with libraries.
5.  http://rbrsidedn1.googlecode.com/files/T6963_Lib-091026a.zip


Cool, nice work. It's much cleaner that way.

Thanks again ...


I'm strugling to get my display working with my mega. Power on on the display will show a large white rectangle. Poweirng on the arduino, the rectangle disappears and I can see a short flash of one line when the reset occurs. But then nothing.

I going to check if I get the right pins (allready converted for the mega)
on with a few leds.
Next thing will be to add some debug code -> serial output to see what's going on.

Go Up