初级会员

- 积分
- 162
- 金钱
- 162
- 注册时间
- 2015-12-17
- 在线时间
- 60 小时
|
探索者开发板4.3寸电容屏ucGUI移植,具体移植过程就不给大家写了。可参照开水哥的移植过程视频下载地址为[size=1em]http://bbs.anbn.cn/thread-58-1-1.html。我主要给大家写一下移植过程中出现的问题,首先是LCDnull.c中的void LCD_L0_DrawVLine(int x, int y0, int y1){} 函数我条用了ILI93XX.c中的LCD_DrawLine(x,y0,x,y1)移植后可以显示ABCD等字母,但是背景色始终是黑色。经过反复试验和向开水哥询问,找到了毛病,在划线过程中要通过打点着色要把void LCD_DrawPoint(u16 x,u16 y)函数中的 TFTLCD->LCD_RAM=POINT_COLOR;改为TFTLCD->LCD_RAM=LCD_COLORINDEX;同时要声明#include "LCD_Private.h" #include "GUI_Private.h"两个头文件这样背景色就会出现了。在移植触摸屏过程中开始是指针一直在(0,0)不动,后发现int GUI_TOUCH_X_MeasureX(void) {u16 x;x = TP_Read_XOY(CMD_RDX);return (x); }和int GUI_TOUCH_X_MeasureY(void){u16 y;y = TP_Read_XOY(CMD_RDY);return (y);}两个函数中没有扫描,在论坛发现原子哥帮别人点播 用加入tp_dev.scan(0);//扫描 //if(tp_dev.sta&TP_PRES_DOWN)Convert_Pos(); return tp_dev.y[0]; 后就解决了这个问题改后函数为 int GUI_TOUCH_X_MeasureY(void) { // u16 y;
// y = TP_Read_XOY(CMD_RDY);
// return (y);
tp_dev.scan(0);//扫描
//if(tp_dev.sta&TP_PRES_DOWN)Convert_Pos();
return tp_dev.y[0];
}
另一个也是这样,只是修改一下参数即可。最后就是屏幕ad参数设置,只需将我的main函数中的while注释掉即可查找,调了半天发现就是屏幕的大小,可能触摸屏不需要调节ad参数,具体这块我也不是很懂。到此工程就移植完成了,下面是我的工程,由于本人比较菜,还请大家多多指点,发现问题及时提出。最后特别感谢原子哥和开水哥的帮助。
|
|