Newhaven Products > Graphic LCDs

NHD-C160100DiZ-FSW-FBW won't display anything

(1/1)

ronnietango:
I have a NHD-C160100DiZ-FSW-FBW display with which I can communicate via i2c.  I have successfully initialised the device and can turn the display on and off (using COM_SEND + 0xAF or AE, respectively).  I can get to this stage with several different i2c master devices (BeagleBone Black, Arduino, and using i2cset from the command line).

However, I am unable to change anything on the display by writing to the page/line/column addresses.  I also cannot seem to read from these addresses in order to verify that anything has been written.  The example code in the datasheet does not work, and the (extremely poorly written) datasheet and user guide have not been at all helpful in describing the steps necessary to write to the screen.

Can anyone explain in clear steps (and/or verified example code) how to write to the pages/lines/columns in order to change the display?

Thanks!

Ted_M:
Hi Ronnie,

Please take a look at our website for more detailed example code. It is listed in our Application Notes section under example code for Chip on Glass displays.
Here we provide more complete I2C code showing writes to the display.
https://newhavendisplay.com/appnotes/excode/txt/CoGLCD/C160100DiZ.txt

I hope this code is more helpful to reference. The code listed in the display datasheet is only to provide the example initialization sequence.

ronnietango:
Hi Ted,

Thanks for the quick response.  However I had already found this code, and it's more or less exactly the same as the code in the datasheet with the very small addition of the actual calls to the show() function in the main loop (and the #include of the picture.h file, which does not seem to be provided).

It also looks like the show() function is written to work with mode 1 (160 x 100), but the init sequence sets the display to mode 0..?

As far as I can tell from the datasheet (though please correct me if I'm wrong), once data is written to the pages, it should be displayed automatically (i.e. there isn't an "update display" command that needs to be called)?  Can you explain to me how to read from the display data registers in order to check if they're being written correctly?

Ted_M:
Hi Ronnie,

Have you been able to resolve this issue?

Navigation

[0] Message Index

Go to full version