I was half asleep when I typed that reply. What I meant to say was that the= status byte is checked before each command or data byte is sent. Sorry. Th= anks.=20 Regards, Steve Maroney Business Computer Support, LLC -----Original Message----- From: "Steve Maroney" Sender: piclist-bounces@mit.edu Date: Mon, 30 Apr 2012 09:01:05=20 To: Microcontroller discussion list - Public. Reply-To: "Microcontroller discussion list - Public." Subject: Re: [EE] T6963c LCD Woes Yes all data or commands to the lcd check the status byte. Regards, Steve Maroney Business Computer Support, LLC -----Original Message----- From: Jim Sender: piclist-bounces@mit.edu Date: Mon, 30 Apr 2012 08:50:22=20 To: Microcontroller discussion list - Public. Reply-To: "Microcontroller discussion list - Public." Subject: Re: [EE] T6963c LCD Woes =20 BODY { font-family:Arial, Helvetica, sans-serif;font-size:12px; } I read this in the datasheet - are you waiting as suggested? link here:- =20 http://www.lcd-module.de/eng/pdf/zubehoer/t6963.pdf [1] =20 "Read the status of the STA0 and STA1 Flags before each new command or data byte is sent to the T6963C. If these two flags are set=20 (i.e.=3D1) then the T6963C is not busy processing the previous instruction and it is safe to write a new command or data byte to the T6963C. If a new instruction is sent to the T6963C while these two flags are not set (i.e.=3D0), then that command shall be ignored by the T6963C."=20 On Mon 30/04/12 5:05 AM , Steve Maroney steve@bcsupportllc.com sent: Hello I have a T6963c LCD connected to a PIC24. I'm pretty close to having it work perfect but Ive got some odd problems and I don't know what im doing wrong. When the address pointer is set to 0x0000, no pixels light up. I have to set the address pointer to 0x0014 (byte 20) to write data to the first 8 pixels. As a test, when I set the address to 0x0000 and use a loop to write 0xff to the graphic area, 20 loops go by before the first byte turns on. From that point, the address pointer increments and continues to fill up the line and moves to the next lineas expected (20 bytes / cols). When I try to set the address pointer to different values and write 0xff, the data will not appear as expected. For example, If I set address pointer to 0x0029 , and write 0xff, the data will show up two or three bytes to the right. If I write to address 0x0028, it works as exptect. If I choose an address further down the screen, the data will not show up anywhere. Also, whenever I try changing the data to write to something like 0xAA or 0x55, the bits get flipped around. 0xAA will show up as "1010 1001". 0x55 will turn on pixels "0101 0110". Another test I did worked fine when I wrote 0xf0 and then 0x0f. The LCD is 160x128. I have graphic home set to 0x0000, and graphic area set to 20 bytes. My instruction time is 250ns (8mhz fosc). I use one NOP between instructions as a delay. Any ideas ? Thanks, Steve --=20 http://www.piclist.com [2] PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist [3] Links: ------ [1] http://www.lcd-module.de/eng/pdf/zubehoer/t6963.pdf [2] http://www.piclist.com [3] http://mailman.mit.edu/mailman/listinfo/piclist --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .