emwin裸机触摸检测描方式
将触摸检测放在硬件定时器中断里面了,实际项目中不推荐这种方式,因为触摸检测获取触摸数据时,时间都稍微有些长,如果获取电容屏的多点触摸数据,时间就更长了,比较影响系统的实时性,所以推荐使用emWin自带的定时器功能来做触摸检测。
分两步即可完成(烈推荐的裸机触摸检测方式,不在中断里调用(裸机)):
第1步:创建定时器,这里创建了两个定时器,周期分别是1ms和10ms。
/* 创建定时器 */
hTimer = GUI_TIMER_Create(_cbTimer, /* 回调函数 */
??????????????????????????1,?????? /* 绝对时间,设置系统上电后1ms作为溢出时间 */
??????????????????????????0x01,????/* 可以认为此参数是区分不同定时器的ID,方便多个定时使用同一个回调函数 */
??????????????????????????0);??????/* 保留,暂时未用到 */
????????????????????????
/* 设置定时器周期为1ms */
GUI_TIMER_SetPeriod(hTimer, 1);
/* 创建定时器 */
hTimer = GUI_TIMER_Create(_cbTimer, /* 回调函数 */
??????????????????????????10,??????/* 绝对时间,设置系统上电后10ms作为溢出时间 */
??????????????????????????0x02,????/* 可以认为此参数是区分不同定时器的ID,方便多个定时使用同一个回调函数 */
??????????????????????????0);??????/* 保留,暂时未用到 */
第2步:定时器的回调函数电阻屏的检测周期是1ms,电容屏的触摸芯片GT811和FT5X06检测周期是10ms。
/*
*********************************************************************************************************
*????函 数 名: _cbTimer
*????功能说明: 定时器回调函数????????
*????形????参: pTM 消息指针
*????返 回 值: 无
*********************************************************************************************************
*/
void _cbTimer(GUI_TIMER_MESSAGE * pTM)
{
???? switch (pTM->Context)
???? {
???????? case 0x01:
??????????????/* 电阻触摸屏 */
??????????????if(g_tTP.Enable == 1)
??????????????{
?????????????????? TOUCH_Scan();
??????????????}
????????????
??????????????/* 此函数一定要调用,设置重新启动,要不仅执行一次 */
??????????????GUI_TIMER_Restart(pTM->hTimer);
??????????????break;
????????
???????? case 0x02:
????
??????????????/* 电容触摸屏GT811 */
??????????????if(g_GT811.Enable == 1)
??????????????{
?????????????????? GT811_OnePiontScan();
??????????????}
??????????????/* 电阻触摸屏FT5X06 */
??????????????if(g_tFT5X06.Enable == 1)
??????????????{
?????????????????? FT5X06_OnePiontScan();
??????????????}
????????????
??????????????/* 此函数一定要调用,设置重新启动,要不仅执行一次 */
??????????????GUI_TIMER_Restart(pTM->hTimer);
??????????????break;??????
????????
???????? default:
??????????????break;
???? }
}
分享完成,,,,,,
好东西啊,,,,
进来支持一下,,,,
谢谢支持的啊哦,
好资料是值得支持的
看看了,,,,,,
有点不错的,,,
是的吧,非常的不错,
谢谢支持的啊哦了,
建议大家一起分享,
建议大家一起分享,
多分享,多受益的,
赶快行动起来的啊,