【MM32F103开发套件试用体验】-emWin移植实验-增加触摸功能
-
-
tank326
- LV3工程师
-
| 2016-08-29 22:26:44
- 浏览量 1010
- 回复:4
用上次自己写的小实例程序,那张坦克图片现在花掉了,是因为单片机内存不够,所以我就把那张图片的数据删掉了一大部分。
触摸部分,参考文档中讲的实际上是模拟的,并不是实际可以用的,参考文档中也做了说明。主要修改是在校准部分,过程都一样。
参考文档中预定义的四个值就是模拟的,并不是实际值:
#define TOUCH_AD_TOP 221
#define TOUCH_AD_BOTTOM 3900
#define TOUCH_AD_LEFT 160
#define TOUCH_AD_RIGHT 3883
然后调用校准函数如下:
GUI_TOUCH_Calibrate(GUI_COORD_X, 0, XSIZE_PHYS - 1, TOUCH_AD_TOP , TOUCH_AD_BOTTOM );
GUI_TOUCH_Calibrate(GUI_COORD_Y, 0, YSIZE_PHYS - 1, TOUCH_AD_LEFT , TOUCH_AD_RIGHT );
实际用于MM32F103开发板上的修改如下:
不需要预定义上面四个值,并修改校准函数中的参数
GUI_TOUCH_Calibrate(GUI_COORD_X, 0, XSIZE_PHYS - 1, (0-tp_dev.xoff)/tp_dev.xfac, (XSIZE_PHYS - 1-tp_dev.xoff)/tp_dev.xfac);
GUI_TOUCH_Calibrate(GUI_COORD_Y, 0, YSIZE_PHYS - 1, (0-tp_dev.yoff)/tp_dev.yfac, (YSIZE_PHYS - 1-tp_dev.yoff)/tp_dev.yfac);
这样就可以愉快的在MM32F103开发板上使用触摸功能了。
由于开发板资料很全,驱动完全不用自己写,稍作删减,拿来就用,事半功倍。
用上次自己写的小实例程序,那张坦克图片现在花掉了,是因为单片机内存不够,所以我就把那张图片的数据删掉了一大部分。
触摸部分,参考文档中讲的实际上是模拟的,并不是实际可以用的,参考文档中也做了说明。主要修改是在校准部分,过程都一样。
参考文档中预定义的四个值就是模拟的,并不是实际值:
#define TOUCH_AD_TOP 221
#define TOUCH_AD_BOTTOM 3900
#define TOUCH_AD_LEFT 160
#define TOUCH_AD_RIGHT 3883
然后调用校准函数如下:
GUI_TOUCH_Calibrate(GUI_COORD_X, 0, XSIZE_PHYS - 1, TOUCH_AD_TOP , TOUCH_AD_BOTTOM );
GUI_TOUCH_Calibrate(GUI_COORD_Y, 0, YSIZE_PHYS - 1, TOUCH_AD_LEFT , TOUCH_AD_RIGHT );
实际用于MM32F103开发板上的修改如下:
不需要预定义上面四个值,并修改校准函数中的参数
GUI_TOUCH_Calibrate(GUI_COORD_X, 0, XSIZE_PHYS - 1, (0-tp_dev.xoff)/tp_dev.xfac, (XSIZE_PHYS - 1-tp_dev.xoff)/tp_dev.xfac);
GUI_TOUCH_Calibrate(GUI_COORD_Y, 0, YSIZE_PHYS - 1, (0-tp_dev.yoff)/tp_dev.yfac, (YSIZE_PHYS - 1-tp_dev.yoff)/tp_dev.yfac);
这样就可以愉快的在MM32F103开发板上使用触摸功能了。
由于开发板资料很全,驱动完全不用自己写,稍作删减,拿来就用,事半功倍。