LCD T6963c display

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

Conclusion:
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

Hi,

I've just linked a T6963C lcd to my arduino some days ago ... I've taken the library there : Interfacing Toshiba T6963C LCD to Atmel AVR microcontroller 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 GDt6963c
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 ...

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 :stuck_out_tongue: ::slight_smile: ! ?
gonna try it tomorrow.

I'm sleepy :stuck_out_tongue:

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 :stuck_out_tongue: ... http://domoduino.tumblr.com/

Good luck with your tests ...

Thank god for google :stuck_out_tongue:

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

I do have to make a negative power... :frowning: shit :stuck_out_tongue: !
Found this do in the pdf

bump... no awnser :frowning:

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

Here we go :

#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() {
      delay(1000);
      GLCD_TextGoTo(3,3);// set text coordinates
      GLCD_WriteString("AaAaAaA"); // write text

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

I love you :stuck_out_tongue:

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

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

My mega should arive tomorrow :stuck_out_tongue:

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

Haha :wink: ... 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 : Arduino Reference - Arduino Reference, 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 :smiley:
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 Interfacing Toshiba T6963C LCD to Atmel AVR microcontroller 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.

Nice i still have to try everything I just got the parts for mij power suply today <-----> still no mega :S have mailt the store so... i hope i will get a response!

:slight_smile: gonna try it today on my "normal" arduino

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.

Sounds like your LCD voltage is out of wack (big white rectangle), and your reset pin is being pulled low (it is an inverted input)

You are right the reset is being pulled low.
I used Gil's code and tried to remove all the code for the second port (I had tried it before with that, but no luck either)

The beginning of my header file:

// data port
#define GLCD_DATA_PORT       PORTC
#define GLCD_DATA_PIN            PINC
#define GLCD_DATA_DDR            DDRC
//#define GLCD_DATA_SHIFT            <<0
//#define GLCD_DATA_RSHIFT            >>0
#define GLCD_DATA_MASK            0xFF


// control port
#define GLCD_CTRL_PORT            PORTA
#define GLCD_CTRL_PIN            PINA
#define GLCD_CTRL_DDR            DDRA
// control signals
#define GLCD_WR                        22
#define GLCD_RD                        23
#define GLCD_CE                        24
#define GLCD_CD                        25
#define GLCD_RESET                  26
#define GLCD_FS                        27
// display properties
#define GLCD_NUMBER_OF_LINES                        64
#define GLCD_PIXELS_PER_LINE                        128
#define GLCD_FONT_WIDTH                                  8

Of course I also changed the c file.

just modified the 22-27 to 0 - 5

Have done a lot off debugging and found something. My display is a 128x64 and I think the memory offsets must be set different.

definitely have to change the resolution settings. Also you need to look at the CGRAM location setting (look for command B00100010, set Offset Register). I boned that up in the library and didn't leave a method for changing it. My LCD has a 32Kb Eprom attached so I put the CG at 30-32kb, if you have a smaller one I assume it can't find the CG memory.

In the initial code I couldn't get the section for 8 vs 6 bit font to work correctly either and ended up hard wiring it.