触摸屏已经得到广泛的应用,触摸手势也将逐步取代鼠标和实体按键之类的输入方式,为手机和电脑等大众化电子产品带来了全新的操作体验: 电阻式触摸屏在嵌入式系统中用的较多,电阻式触摸屏可分为四线、五线、七线等几种。由于使用WinCE触摸屏比较广泛,所以我们自己偶尔也会碰到这样或者那么样的问题。要是只是小问题,可能我们自己动一下手就可以处理,这又何乐而不为呢? 那如何配置和初始化触摸屏?触摸屏驱动在初始化过程会调用TouchPanelEnable函数,该函数调用的DDSI函数为DdsiTouchPanelEnable和 DdsiTouchPanelDisable。这两个DDSI接口函数是驱动实现的关键所在,分别用于打开和关闭触摸屏硬件。但是为了降低功耗,这两个函数其实可以不真正操作硬件,而只是实现软件上的控制。 同时,在初始化时还需要进行这几个配置和初始化:一是创建事件hTouchPanelEvent和 hCalibrationSampleAvailable,前者是在正常状态下当有触摸笔按下或者按下后需要定时采集数据时被触发;而后者是在校准状态下当有校准数据输入时被触发。二是检查初始化所需的中断gIntrTouch(触摸屏中断)和gIntrTouchChanged(定时器中断),并将这两个中断关联到事件hTouchPanelEvent。 三是创建一个ISR线程TouchPanelpISR,用于等待和处理触摸屏事件hTouchPanelEvent,它也是整个驱动程序中唯一的事件源。 |