OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 9450|回复: 2

触摸屏有事不明,前来受教。

[复制链接]

9

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2011-12-2
在线时间
0 小时
发表于 2011-12-6 20:08:52 | 显示全部楼层 |阅读模式
最疑惑的三个函数,究竟实现了什么功能,
u8 Read_TP_Once(void)
{
 u8 t=0;    
 en_Int_Set(0);//关闭中断
 en_Point.Key_Sta=Key_Up;
 Read_ADS2(&en_Point.X,&en_Point.Y);
 while(PEN==0&&t<=200){t++;delay_ms(10);}
 en_Int_Set(1);//开启中断  
 if(t>=200)return 0;//按下2.5s 认为无效
  return 1; 
}

void EXTI1_IRQHandler(void)
{         
 en_Point.Key_Sta=Key_Down;          
 EXTI->R=1<<1;  //清除LINE1上的中断标志位
}
//PEN中断设置 
void Pen_Int_Set(u8 en)
{
 if(en)EXTI->IMR|=1<<1;   //开启line1上的中断    
 else EXTI->IMR&=~(1<<1); //关闭line1上的中断   
}

#define Key_Down 0x00
#define Key_Up   0x01
请各位高手简明扼要的说一下,这几个函数搭配起来实现了什么功能,按下去究竟是0还是1呢?中断函数似乎只是把按键的状态器切换了,很不明白
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

46

主题

284

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
494
金钱
494
注册时间
2011-6-20
在线时间
0 小时
发表于 2011-12-7 00:25:59 | 显示全部楼层
有没有按下 只需判断Pen_Point.Key_Sta的状态
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2011-12-7 00:36:09 | 显示全部楼层
第一个,从名字就知道,就是读取一次结果.
第二个,是触摸屏中断服务函数.
第三个,用于设置是否开启触摸屏中断.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-24 14:03

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表