资深版主
 
- 积分
- 10571
- 金钱
- 10571
- 注册时间
- 2017-2-18
- 在线时间
- 1914 小时
|
发表于 2018-11-15 18:59:13
|
显示全部楼层
[mw_shl_code=c,true]//电容触摸屏测试函数
void ctp_test(void)
{
u8 t=0;
u8 i=0;
u16 lastpos[5][2]; //记录最后一次的数据
while(1)
{
LCD_DrawRectangle(150, 350, 330, 450);
LCD_ShowString(200,390,100,16,16,"LED1");
tp_dev.scan(0);
for(t=0;t<CT_MAX_TOUCH;t++)
{
if((tp_dev.sta)&(1<<t))
{
if(tp_dev.x[t]<lcddev.width&&tp_dev.y[t]<lcddev.height)
{
if(lastpos[t][0]==0XFFFF)
{
lastpos[t][0] = tp_dev.x[t];
lastpos[t][1] = tp_dev.y[t];
}
// lcd_draw_bline(lastpos[t][0],lastpos[t][1],tp_dev.x[t],tp_dev.y[t],2,POINT_COLOR_TBL[t]);//画线
lastpos[t][0]=tp_dev.x[t];
lastpos[t][1]=tp_dev.y[t];
if(tp_dev.x[t]>150&&tp_dev.x[t]<330&&tp_dev.y[t]>350&&tp_dev.y[t]<450)
{
while((tp_dev.sta)&(1<<0))
{
tp_dev.scan(0);
}
delay_ms(500);
LED1=!LED1;
}
}
}else lastpos[t][0]=0XFFFF;
}
delay_ms(5);i++;
if(i%20==0)LED0=!LED0;
}
}[/mw_shl_code]用的4.3寸MCU屏,这么写不会导致触摸屏按下的时候翻转三次电平 |
|