#endif /* Avoid multiple inclusion */ 第四步:最关键的一步。那就是让GUI能够找到你的LCD驱动。修改LCDDriver。 在编写你的TFT底层驱动程序的时候,一定不能忘记编写这两个函数:设置一个像素和获取一个像素的颜色,因为后面很多UCGUI和你的TFT驱动关联起来需要这两个函数为前提。以我的TFT为例: void LCD_SetPixel(unsigned short x, unsigned short y, unsigned short color) { …. … }
unsigned short LCD_GetPixel(unsigned short x, unsigned short y) { … … } 这两个函数写好,并测试可以正常显示后,接下来需要修改TFT与UCGUI关联的函数(在一个C文件下(我的是ili9320_ucgui.c),建议大家在移植GCGUI之前最好下载个别人移植好的例程,对着修改这样难度降低很多): int LCD_L0_Init(void) { TFT_Init(); return 0; } 这个函数,是GCGUI初始化TFT需要调用的,里面的函数就是你TFT底层驱动的初始化函数。 void LCD_L0_SetPixelIndex(int x, int y, int PixelIndex) { LCD_SetPixel(x,y,PixelIndex); } unsigned int LCD_L0_GetPixelIndex(int x, int y) { return LCD_GetPixel(x,y); } 上面两个函数是其他函数的最基本元素,其他函数比如画线、点、圆都需要调用改函数。里面的LCD_SetPixel(x,y,PixelIndex)、LCD_GetPixel(x,y);就是你TFT底层驱动设置像素和获取像素的两个函数。 紧接着把该ili9320_ucgui.c文件下其他函数修改一下(凡是遇到设置像素和获取像素的地方用以上两个函数代替。) 接着,修改另一个C文件(ili9320_api.c)这里修改很简单,仅仅也是将设置像素和获取像素的函数替换掉自己定义的即可。