LPC1343 TFT/OLED Graphics Sub-System Documentation (v1.1.0)
Using the included drawing routines for TFT LCDs in the LPC1343 Code Base (v1.1.0 and higher)
The LPC1343 Code Base includes a reasonably complete graphic sub-system that can be used with a variety of RGB565 TFT or OLED displays.
It includes all the basic drawing primitives you'd expect, as well as color conversion and alpha-blending, support for bitmap and anti-aliased fonts, loading and saving of bitmap images (from/to an SD card or elsewhere), and a few basic controls to help you get started developing your own custom look and feel in your application.
The core drawing routines (/drivers/displays/tft/drawing.c) are seperated from the actual HW (/drivers/displays/tft/hw/*) so that the underlying display can be easily changed without having to significantly modify your project code (see the architectural overview for more details).
A number of drivers are provided for common displays and controllers, and it's relatively straight-forward to extend the library to support new ones: you simply need to implement the set of functions defined in lcd.h, and the graphics sub-system will call these functions directly when rendering any text, graphics, etc..
This documentation gives a general summary of the graphic sub-system, describes the generic drawing routines currently available in the LPC1343 Code Base (as of v1.1.0), and offers some general tips on getting started with displays. Select an appropriate section below to read on:
Supported HW: There are a number of LCD drivers present in the "drivers/displays/tft/hw" folder, but the only complete and supported driver in the LPC1343 Code Based is for the ILI9328, for 240x320 pixel 16-bit TFT LCDs using an 8-bit interface. Other drivers should be considered experimental and may be missing some features or are incomplete (as of v1.1.0). They may, however, serve as a starting point to developping other LCD drivers that work with the LPC1343 Code Base and can directly use the API described in this document. Our intention, of course, is to continue developping new drivers to support a number of new LCDs as well.