ucgui的触摸执行过程

在STM32上调试ucos+ucguI的触摸时,显示上下左右中5个button,但是按上button时触发的却是右button,调试发现显示区域大小正常,触摸区域大小正常。但就是触摸区域无法与实际的button相对应。

ucgui的触摸执行过程_第1张图片ucgui的触摸执行过程_第2张图片

 分析原因可能是xy轴不匹配,那就需要分析gui的执行过程,先是判断触摸点,然后在窗口中查询与哪个控件相对应,然后在响应功能,执行过程如下图

ucgui的触摸执行过程_第3张图片

 通过执行过程发现,x,y轴的点刚好相反,

ucgui的触摸执行过程_第4张图片

 

于是乎一步步查找后发现还有部分没有配置正确,在GUITouchConf.h中,把GUI_TOUCH_SWAP_XY 由1改为0,然后显示正常

#ifndef GUITOUCH_CONF_H
#define GUITOUCH_CONF_H


#define GUI_TOUCH_AD_LEFT  20   
#define GUI_TOUCH_AD_RIGHT  240    
#define GUI_TOUCH_SWAP_XY    0//1
#define GUI_TOUCH_MIRROR_X   0
#define GUI_TOUCH_MIRROR_Y   0//1

你可能感兴趣的:(GUI,stm32,单片机,mcu,物联网)