7117|18

77

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

问几个触摸屏驱动的问题 [复制链接]

问几个触摸屏驱动的问题
一、我们如何用EVC应用程序去控制触摸屏驱动?我看老帖有人提到自己写触摸屏校验程序,这是如何实现的?

二、触摸屏抖动:我用笔针点应用程序的滚动条,发现滚动条会上下颤动,我在把另外一个BSP的NK放到同一个机子上,不会抖动,于是我把可行的BSP的触摸屏驱动代替有问题的触摸驱动,但是还是会抖动,奇怪了,你有何见解?请指点一下,我看你以前回的帖子都是从软件和硬件分析了,讲的非常好。再次麻烦你了。

最新回复

呵呵。我换个驱动就好了。  详情 回复 发表于 2009-11-10 11:54
点赞 关注

回复
举报

63

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
是不是我问的问题很蹩脚。大家都不愿意说呢?
 
 

回复

96

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
1,你所说的控制我不知道指的是什么,至于触摸屏矫正,只是运算完以后,把数据写入注册表而已,驱动会从注册表读取矫正数据。
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

4
 
我表达欠佳,版主

我的意思就是自己写个应用程序,来校正触摸屏,我只会弄流驱动,像本机驱动这种东西,不会弄。
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

5
 
BSP下public有触摸屏校准应用程序源代码,我们刚刚才用滴。。。
 
 
 

回复

84

帖子

0

TA的资源

一粒金砂(初级)

6
 
校准wince不是自带了代码了吗,为什么还要再写过。
抖动或许跟注册表里面的校准数据有关系。我也遇到过,不记得后来怎么好了。
 
 
 

回复

83

帖子

0

TA的资源

一粒金砂(初级)

7
 
引用 4 楼 lesho 的回复:
BSP下public有触摸屏校准应用程序源代码,我们刚刚才用滴。。。


o ?能否把路径发给我看看,这些本机驱动是如何操作的。
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

8
 
触摸屏矫正程序严格的说不是一个驱动。
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

9
 
引用楼主 gooogleman 的帖子:
问几个触摸屏驱动的问题
一、我们如何用EVC应用程序去控制触摸屏驱动?我看老帖有人提到自己写触摸屏校验程序,这是如何实现的?

二、触摸屏抖动:我用笔针点应用程序的滚动条,发现滚动条会上下颤动,我在把另外一个BSP的NK放到同一个机子上,不会抖动,于是我把可行的BSP的触摸屏驱动代替有问题的触摸驱动,但是还是会抖动,奇怪了,你有何见解?请指点一下,我看你以前回的帖子都是从软件和硬件分析了,讲的非常好。再次…

触摸屏校正应该算是应用层了。按照MSDN标准提示,应该是调用一堆标准的函数,然后在屏上画十字(可以画别的),然后获得的坐标值保存就行。
要是问校正原理,倒是清楚,可从没做过。

你这问题就诡异了。四个角落的触摸情况如何?在驱动中加打印信息,看看驱动获得的坐标点是不是就在漂移?先判断是由驱动引起的还是由系统引起的。
 
 
 

回复

86

帖子

0

TA的资源

一粒金砂(初级)

10
 
引用 7 楼 yashi 的回复:
触摸屏矫正程序严格的说不是一个驱动。


我就是说是个应用程序啊。我不知道应用程序和本机驱动该怎么调用啊。

那个校正程序源码我没有找到。

不过我想请教个电压值转换为坐标的函数的一些问题。

  1. //------------------------------------------------------------------
  2. // 把电压转换为坐标
  3. // 函数参数为电压值
  4. //------------------------------------------------------------------

  5. #define TSP_MINX                                                85
  6. #define TSP_MINY                                                105

  7. #define TSP_MAXX                                                1000//965
  8. #define TSP_MAXY                                                1000//98

  9. #define TSP_LCDX                                                (LCD_XSIZE_TFT * 4)
  10. #define TSP_LCDY                                                 (LCD_YSIZE_TFT * 4)
  11. PRIVATE void
  12. TSP_TransXY(INT *px, INT *py)
  13. {
  14.         *px = (*px - TSP_MINX) * TSP_LCDX / (TSP_MAXX - TSP_MINX);
  15.         *py = (*py - TSP_MINY) * TSP_LCDY / (TSP_MAXY - TSP_MINY);

  16.         if (*px  <        0) *px = 0;
  17.         if (*px >= TSP_LCDX) *px = TSP_LCDX - 1;

  18.         if (*py  <        0) *py = 0;
  19.         if (*py >= TSP_LCDY) *py = TSP_LCDY - 1;
  20. }
复制代码


我的是3.5寸的屏幕。
下面的几个参数的取值是由什么决定的?感觉挺怪的。
#define TSP_MINX                                                85
#define TSP_MINY                                                105

#define TSP_MAXX                                                1000//965
#define TSP_MAXY                                                1000//98


 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

11
 
关注,不过我改成
#define TSP_MINX 0
#define TSP_MINY 0

#define TSP_MAXX 1023
#define TSP_MAXY 1023

也没有问题,实际上就只是把0~1023个点转化到0~LCD_XSIZE_TFT * 4和0~LCD_YSIZE_TFT * 4上

觉得那样做没什么道理
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

12
 
我改过,但是越改越糟糕的。
 
 
 

回复

293

帖子

0

TA的资源

纯净的硅(高级)

13
 
我觉得可能和触摸屏有关,他那样是把靠近触摸屏边上的点都扔掉了
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

14
 
发现这玩意看没有什么用,要使用调试手段慢慢体会。

等过段时间把KITL整好了就弄弄。
 
 
 

回复

88

帖子

0

TA的资源

一粒金砂(初级)

15
 
引用 10 楼 dhdahai 的回复:
关注,不过我改成
#define TSP_MINX 0
#define TSP_MINY 0

#define TSP_MAXX 1023
#define TSP_MAXY 1023

也没有问题,实际上就只是把0~1023个点转化到0~LCD_XSIZE_TFT * 4和0~LCD_YSIZE_TFT * 4上

觉得那样做没什么道理

这些都是边界参数,修改影响不大的。因为你是同一板子不同NK,所以排除硬件的问题。我想可以修改一下ADC采样的频率,以及DELAY的时间,看有没有效果。
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

16
 
基本是这样了。

开始电源管理的东西了。
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

17
 
哦,学习。学习
 
 
 

回复

54

帖子

0

TA的资源

一粒金砂(初级)

18
 
gooogleman:那点击滚动条抖动的问题后来到底是如何解决的
 
 
 

回复

89

帖子

0

TA的资源

一粒金砂(初级)

19
 
引用 17 楼 ddhllf 的回复:
gooogleman:那点击滚动条抖动的问题后来到底是如何解决的

呵呵。我换个驱动就好了。
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表