Monochrome Graphic Display Source Code Driver Project
Section 09. Troubleshooting

09. Troubleshooting

a) General Troubleshooting Notes

Getting a new screen to work can be frustrating as until you get the control signals and initialisation sequence right you won’t see anything on the screen. Here are a few tips to help:-

Double check IO pin definitions in the driver header file.

Verify with a scope that all of the control and data pins to the screen are working correctly.

Add additional null execution steps to the DISPLAY_BUS_ACCESS_DELAY define in the display.h file in case more time is required for signals to stabilise on your PCB. This is more likely to be an issue for 2 layer PCB’s (no ground plane) with long tack lengths or screens with long ribbon / FFC cable connections.

Check that no other device on the data bus is outputting while the driver is trying to communicate with the screen.

If your screen controller IC includes a status register try reading the status from the screen and confirm that you get the expected response.

If you’re using output latches for some of the screen control pins, instead of pins connected directly to your processor, check your output latch function restores the previous output on the data bus when it exits, to avoid destroying the data the driver function is writing to the screen.

Check that your microcontroller is not resetting due to a watchdog timer timeout.

Check that you have enough stack space allocated. This driver does not use an excessive amount of ram from the stack, but if your application is already using large amounts of the stack before calling driver functions this may be causing a stack overrun?

Re-read the datasheet to find out what you’re doing wrong!

b) Support

Please visit the support section of the embedded-code.com web site if you have any queries regarding this driver. Please note that our support covers the use of this driver with the reference designs in this manual. Where possible we will try to help solve any problems if the code is used with other devices or compilers, but given the huge number of devices and compilers available we are unable to guarantee ‘out of the box’ compatibility. If you plan to use the source code with a different processor, microcontroller and/or compiler you should ensure that you have sufficient programming expertise to carry out any modifications that may be required to the source code.

If you do encounter issues using the driver with other compilers or devices and are able to give us details of the issue you encountered we will try and include changes or notes across our range of drivers to help other programmers avoid similar issues in the future. Please use the contact us page of our web site to report any such issues discovered.