ST7036 LCD Driver
This is an implementation of the ST7036 LCD driver controller. Any LCD using such driver can be derived from this implementation. The driver has been implemented following the reference LCD API 1.0 by firstname.lastname@example.org.
The ST7036 class implements the generic ST7036 driver following the LCD API 1.0. An specialized class for the NHD-C0216BiZ-FSW LCD has been implemented. To avoid having too much memory being used, the methods of the ST7036 library are not virtual.
The LCD class, implements a pure abstract LCD API 1.0 class. For memory usage reasons, the ST7036 doesn't inherit from it. It is there so that it can be used during development to verify API compliance. For new drivers derived from the LCD API 1.0, while developing, inherit from the LCD class. When deploying simply remove the inheritance.
LCDs with the ST7036 should be supported as is with no modifications.
LCDs with the ST7032i should also be supported even though I have not tested it, examples are:
The library is provided with a sample project that demonstrates the capability of the library. The example project, displays the light level being read by an LDR connected to an analog pin and displays the value both numerically and as a bar graph. The sample code, shows how to create custom characters, and how to use the various methods provided by the library.
Version 1.1.0 of the library in the download section is compliant with Arduino SDK v22. Version 1.2.0 of the library is Arduino v1.0 compliant.
The code is Copyright 2011 under the Creative Commons license 3.0: Attribution-ShareAlike CC BY-SA This software is furnished "as is", without technical support, and with no warranty, express or implied, as to its usefulness for any purpose.
You are free to use the code, modify and share it following the CC license 3.0 BY-SA.
Should you have any comments, improvements or queries, please fill free to drop me a line at: email@example.com.
Enjoy the library and let me know what you think.