I have a CFAX12864CP1-WGH-TS mounted on a PCB that I acquired from Spark Fun.
1.) It seems that when writing to the display, the first column is actually 4 not 0!! Try writing to positions 0 through 3 and nada. This is kinda bizarre, and the data sheet for the controller does not say anything about this!!! The Spark Fun example code did not reflect this "little" gotcha because that code flips the display 180 degrees about both axes and is effectively writing from position 133 to position 0, thus masking the 4 position column "0" offset issue. After beating my head against the wall, I was able to confirm this by examining the Crystalfontz example Windows code!!!! I made the necessary work-around adjustments to my code.
2.) Writing to the display works, but when I read a column on a page, bit 7 is always set!!!. I'm pretty sure my connections are OK since all commands to write the screen and control the device work. For example, I can send 0xFF to each column on each page, and the screen is black. When I read back I get 0xFF for each column on each page, I can write 0x00 to each column on each page and the screen is cleared. However when I read back each column each page, the return value is 0x80 so bit 7 is set on each column of each page read, but the screen is blank!! I'm at a loss to figure this out. Is this a unit defect? So, I ask, what's going on?
If this is an inherently flaky device, does Crystalfontz have something else with a touchscreen that is similar
TIA
Darrell
1.) It seems that when writing to the display, the first column is actually 4 not 0!! Try writing to positions 0 through 3 and nada. This is kinda bizarre, and the data sheet for the controller does not say anything about this!!! The Spark Fun example code did not reflect this "little" gotcha because that code flips the display 180 degrees about both axes and is effectively writing from position 133 to position 0, thus masking the 4 position column "0" offset issue. After beating my head against the wall, I was able to confirm this by examining the Crystalfontz example Windows code!!!! I made the necessary work-around adjustments to my code.
2.) Writing to the display works, but when I read a column on a page, bit 7 is always set!!!. I'm pretty sure my connections are OK since all commands to write the screen and control the device work. For example, I can send 0xFF to each column on each page, and the screen is black. When I read back I get 0xFF for each column on each page, I can write 0x00 to each column on each page and the screen is cleared. However when I read back each column each page, the return value is 0x80 so bit 7 is set on each column of each page read, but the screen is blank!! I'm at a loss to figure this out. Is this a unit defect? So, I ask, what's going on?
If this is an inherently flaky device, does Crystalfontz have something else with a touchscreen that is similar
TIA
Darrell
Looking for additional LCD resources? Check out our LCD blog for the latest developments in LCD technology.