OpenEdv-开源电子网

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

触摸屏程序一个地方和实验现象的疑问,求教!

[复制链接]

12

主题

40

帖子

0

精华

初级会员

Rank: 2

积分
109
金钱
109
注册时间
2012-8-14
在线时间
0 小时
发表于 2013-2-18 11:41:11 | 显示全部楼层 |阅读模式
            

1.      在实验板上,当手触摸板子时,开始显示线条,此时LED停止闪烁且Key0按键失效,奇怪的是当不触摸时,PEN应该是1才对。可是程序仍然在do{}while(PEN == 0)中,不知道是为什么,难道是什么XPT2046指令问题?(看了下手册,笔中断是触摸时才发生,并且若一直触摸的话一直输出低电平,我理解没错吧?),fficeffice" />

while(1)

    {       

            key=KEY_Scan();

             if(Pen_Point.Key_Sta==Key_Down)//触摸屏被按下

             {

                      Pen_Int_Set(0);//关闭中断

                      do

                      {//当触摸一次后,不再触摸时,仍然死在里面

                  Convert_Pos();

                                Pen_Point.Key_Sta=Key_Up;

                                 if(Pen_Point.X0>216&&en_Point.Y0<16)Load_Drow_Dialog();//清除

                                else

                                {

                                         Draw_Big_Point(Pen_Point.X0,Pen_Point.Y0);//画图

                                         GPIOC->ODR|=1<<1;    //PC1上拉       

                                }

                      }while(PEN==0);//如果PEN一直有效,则一直执行

                      Pen_Int_Set(1);//开启中断

             }else delay_ms(10);

             if(key==1)//KEY0按下,则执行校准程序

             {

                      LCD_Clear(WHITE);//清屏

                Touch_Adjust();  //屏幕校准

                      Save_Adjdata();       

                      Load_Drow_Dialog();

             }

             i++;

             if(i==20)

             {

                      i=0;

                      LED0=!LED0;

             }                

    }

心兰相随
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

12

主题

40

帖子

0

精华

初级会员

Rank: 2

积分
109
金钱
109
注册时间
2012-8-14
在线时间
0 小时
 楼主| 发表于 2013-2-18 13:42:41 | 显示全部楼层


  用万用表测量PC1电平的时候,没有触摸时为3.3V左右,触摸后,死在do while时,测量PC1为1.35V左右,万用表放开的一瞬间
程序跳出了Do while,貌似PC1回1有点力不从心,万用表表头给了点刺激什么的。

 

看了一下其他帖子,采取了其中一种方法,就正常了

Convert_Pos();fficeffice" />

             delay_us(50); //这里加个延时就好了


另外,用杜邦线把PC1接到 DS18B20的数据排针上,则相当于4.7K上拉了PC1,这时触摸失效了,测得没进中断,其他正常,不知为什么?


心兰相随
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-2-19 12:40:01 | 显示全部楼层
这个地方是比较奇怪,我也很疑惑,呵呵。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-22 06:11

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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