首页 > 嵌入式软件 > WinCE

 

本文引用地址: http://embed.21ic.com/software/wince/201806/53406.html

嵌入式系统中较为常用的是四线电阻式触摸屏,通过检测x轴和y轴的电压,来确定触点的位置。一般触摸屏系统结构为:触摸屏->触摸屏控制器->处理器。

wince7下触摸屏的驱动分为PDD层(位于bsp目录中)和MDD层(位于public目录中)。PDD层和MDD层通过DDSI接口函数连接,MDD层和上层通过DDI函数连接。其中MDD层一般无需修改,我们只需修改PDD层的代码。

比如我的bsp目录下触摸屏驱动中的touchscreenpdd.cpp文件中主要有如下函数:

TchPdd_Init()

TchPdd_Ioctl()

PDDTouchIST()

PDDInitializeHardware()

PDDTouchPanelEnable()

PDDTouchPanelGetPoint()

PDDCalibrationThread()

PDDStartCalibrationThread()

PDDDeInitailzeHardware()

PDDTouchPanelDisable()

其中TchPdd开头的函数就是DDSI函数,PDD开头的函数就是PDD层的函数。MDD层会最先调用TchPdd_Init()函数,该函数会将DDSI函数以函数指针的形式传递给MDD层,并调用PDD层的函数进行必要的初始化,如调用PDDInitializeHardware()来初始化SPI,GPIO(我的触摸屏控制器使用SPI接口),调用PDDTouchPanelEnable()来创建“触摸屏事件”,创建IST线程等。

IST线程函数PDDTouchIST()中会有一个while循环,如下图所示:


循环中有一个WaitForSingleObject(,)函数。该函数有两个参数,第一个参数是“触摸屏事件”的句柄,第二个参数用来设置等待超时的时间。IST线程执行到这个函数会等待“触摸屏事件”发生或者超时。当这两种情况之一发生后,线程就会往下执行,并调用PDDTouchPanelGetPoint()函数来读取触点坐标。在“触摸屏事件”发生之前,超时时间会设置为无限等待。只有当“触摸屏事件”发生后(触点按下)才会开始读坐标,并判断是否还是按下状态,如果还是按下状态,那么就会设置超时时间为某一个有限值,这样当WaitForSingleObject等待时间超过这个值后又会去读取坐标。这种机制就能保证我们能读取到触点移动的轨迹。

当然要想使用“触摸屏事件”,必须要有一个触摸屏的中断(当触点按下,这个中断发生),并将这个中断和“触摸屏事件”关联起来,这样中断发生后,才会触发“触摸屏事件”。

还有一种方法:不使用中断,直接采用轮询方式来读取坐标,通过读取坐标值的合法性来决定是否有触点按下。这种方式下,WaitForSingleObject的第一个参数就不起作用,且第二个参数必须设为一个有限值,这个值就决定来轮询的频率。

 

换一批

延伸阅读

[行业资讯] 指纹芯片厂商上半年价格一路跌,用啥赚钱

指纹芯片厂商上半年价格一路跌,用啥赚钱

2017年时间已历经过半,不少指纹芯片厂商都对自己上半年的营收情况有个总结,如汇顶、贝特莱、神盾等上市公司都相继发布了上半年财务报告,其指纹芯片业务营收都有所增长。除上市公司之外,据笔者了解,其他芯片厂商营收虽没具体统计,但也呈现增长状态。......

关键字:指纹识别 触摸屏 汇顶 芯片

[趣科技] 接近绝对零度:世界上最冷的电子芯片

接近绝对零度:世界上最冷的电子芯片

不过,科学家从未停止尝试。巴塞尔大学的物理学家曾经提出,利用磁冷却使纳米电子设备的温度降到接近绝对零度,这种方法能够实现破纪录的低温。磁冷却的原理是这样的:在绝热条件下,当外加磁场逐渐减小时,系统会渐渐冷却。在减小磁场前,磁化产生的热量需要......

关键字:电子芯片 绝对零度

[新鲜事] 库克笑了,特朗普表示不会对中国组装的iPhone加征关税

库克笑了,特朗普表示不会对中国组装的iPhone加征关税

6月19日消息,据VentureBeat报道,随着美国计划对中国产品加征500亿美元关税,中美之间的贸易紧张局势继续升级,苹果担心中国将为其产品设置监管和出货障碍。苹果首席执行官蒂姆·库克(Tim Cook)正在与两国政......

关键字:特朗普 库克 iPhone

[真心话] 为什么说语文和英语是硬件工程师的天敌?

为什么说语文和英语是硬件工程师的天敌?

因为我文科学的不好,所以我才去学理工科的。语文课和英语课,是工程师的天敌。很多人以此为借口,找理由证明自己语言天赋太差,但反观学霸,文科成绩都也不错。古代科举制度下,对文学的极端重视,也反应了文字能力,是个人逻辑性和创造性的的重要展现。连自......

关键字:硬件工程师 语文 英语

[趣科技] 可以为手机充电的牛仔裤

可以为手机充电的牛仔裤

但是如果有一条神奇的既可以容纳你的手机,同时还可以给你的手机充电,让你出门在外,从此无忧,你会去购买这款神奇的牛仔裤吗?......

关键字:充电
条评论

我 要 评 论

网友评论

大家都爱看

  • 扇出型晶圆级封装的优势和挑战!

    我们有能力创造一些能保持前代性能并且更好更小的电子设备,例如今天的可穿戴设备、智能手机或平板电脑,这是由于很多因素超过摩尔定律而快速发展,从而能够从底层的嵌入组件发展到今天把它们封…

    2018-03-29
  • Xilinx推出革命性的新型自适应计算产品

    自适应和智能计算的全球领先企业赛灵思公司(Xilinx, Inc.,(NASDAQ:XLNX)),近日宣布推出一款超越FPGA功能的突破性新型产品,名为ACAP(Adaptive Compute Acceleration Platform,自适应计算加速…

    2018-03-20
  • 赛普拉斯为树莓派3 B+ IoT单板计算机提供强大稳定的无

    先进嵌入式系统解决方案的领导者赛普拉斯(纳斯达克代码:CY)近日宣布其Wi-Fi®和蓝牙®combo解决方案为全新的树莓派 3 B+(Raspberry Pi 3Model B+)IoT单板计算机提供强大稳定的无线连接…

    2018-03-20
  • 观看直播领红包,SEED-A10加速卡助力人工智能

    随着云服务器、云计算的发展,大家对硬件加速的需求越来越多,但是随着设备功耗的上升、性能需求越来越高,常规加速设备以及开始不能满足需求,因此FPGA逐渐在硬件加速中找到了自己的位置,而艾…

    2018-03-19
  • 特朗普:博通不得以任何形式收购高通

    白宫周一(3月12日)晚发出声明,川普(特朗普)总统出于“国家安全”考量、禁止新加坡博通公司(Broadcom)收购美国高通公司(Qualcomm)。

    2018-03-14