S3C6410禁用和启用触摸屏

时间:2022-11-23 20:38:54
 

********************************LoongEmbedded********************************

作者:LoongEmbedded(kandi)

时间:2011.11.18

类别:WINCE驱动开发

********************************LoongEmbedded********************************

 

备注:基于WINCE6.0+S3C6410的系统

 

根据项目的需要,为了节省功耗,在产品工作而且又不需要看LCD屏显示的时候,我们关闭LCD屏的显示,与此同时也需要禁用触摸屏的响应;在需要的时候再恢复LCD屏的显示,与此同时,需要回复触摸屏对触摸的正常响应。怎么去实现呢?

 

先看S3C6410的矢量中断控制器部分对触笔按下和抬起时对应的中断描述

S3C6410禁用和启用触摸屏

图1

由上图可知触笔按下和抬起的物理中断号是62,对应与VIC1这组的VIC[30],接着来看矢量中断控制器部分对中断使能寄存器VICINTENABLE和中断使能清除寄存器VICINTENCLEAR的描述

S3C6410禁用和启用触摸屏

图2

由上图可知,通过对VIC1INTENCLEAR寄存器的[30]位置位就可以禁用INT_PENDNUP中断,从而禁用触摸屏的触摸功能,而通过对VIC1INTENABLE寄存器的[30]位置位来使能INT_PENDNUP中断,从而启动触摸屏的正常触摸响应,代码如下:

禁用:

g_pVIC1Reg->VICINTENCLEAR = (0x1<<30);

启用:

g_pVIC1Reg->VICINTENABLE = (0x1<<30);

这样就可以实现触摸屏触摸功能是否启用的切换了。