TFT LCDs ======== The top level of this folder contains generic drawing routines for 16-bit TFT LCD displays. The core drawing functions are defined in drawing.c, and the specific HW implementation of these routines (setting the individual pixels, initialising the display, etc.) takes place in a seperate HW drivers that implements the methods defined in lcd.h. To change the LCD used, you simply need to change which HW-specific file is compiled and linked during the build process, without having to change anything else in your application code. For example: - main.c - drawing.c - hw\ili9325.c ---------------- ---------------- ---------------- APPLICATION --> GENERIC DRAWING --> SPECIFIC HW CODE --> CODE --> DRIVER ---------------- ---------------- ---------------- drawing.c Generic drawing routines such as drawing pixels, lines, rectangles, as well as basic text-rendering. lcd.h This file contains the prototypes of HW-specific functions that must be implemented in the LCD driver, since drawing.c will redirect all requests to these lower level functions. touchscreen.c Contains a very simple example of how to use the ADC to read the current position on a touchscreen. No signal debouncing takes places, and this code will need to be improved for use in a real-world situation. colors.c Functions relating to color conversion, etc. fonts.c 1-bit font functions and definitions aafonts.c Preliminary effort at adding 2-bit and 4-bit anti- aliased fonts, though this is still a work in progress. hw\* HW-specific drivers based on lcd.h