winamp123 发表于 2015-2-4 22:28:22

STemWin 触摸模块是怎么与touch驱动映射?

本帖最后由 winamp123 于 2015-2-5 19:24 编辑

我查看了STemWin_SampleDemo 例子中有关触摸屏应用的代码,发现最终都调用了 GUI_TOUCH_GetState 函数。可这个函数是怎么与驱动 STMPE811.c中的函数映射上的? 没有看到相关的调用关系,请问能否提示下?

能否这样理解:StemWin 是由ST提供了标准TOUCH driver接口。GUI_TOUCH_XXX 对这些接口进行了封装?

typedef struct
{
void       (*Init)(uint16_t);
uint16_t   (*ReadID)(uint16_t);
void       (*Reset)(uint16_t);
void       (*Start)(uint16_t);
uint8_t    (*DetectTouch)(uint16_t);
void       (*GetXY)(uint16_t, uint16_t*, uint16_t*);
void       (*EnableIT)(uint16_t);
void       (*ClearIT)(uint16_t);
uint8_t    (*GetITStatus)(uint16_t);
void       (*DisableIT)(uint16_t);
}TS_DrvTypeDef;

沐紫 发表于 2015-2-5 09:55:24

顶,另外建议提问发布悬赏贴,赠送ST金币,大家会更热心来帮你的。我们也会补发金币给你

winamp123 发表于 2015-2-5 19:33:44

或者STemWin对 stm324x9i_eval_ts.h 中的函数 BSP_TS_XXX进行了封装。

moyanming2013 发表于 2015-2-5 19:50:35

驱动层直接实现,或者有相应的API。

dsjsjf 发表于 2018-3-20 10:19:09

只要补充这几个函数就可以了
void GUI_TOUCH_X_ActivateX(void)
{

}
void GUI_TOUCH_X_ActivateY(void)
{

}

int GUI_TOUCH_X_MeasureX(void)
{
////Scan_TouchPanel();
Touch_Calculate();
return Get_TpX();
}
int GUI_TOUCH_X_MeasureY(void)
{
return Get_TpY();
}
页: [1]
查看完整版本: STemWin 触摸模块是怎么与touch驱动映射?