首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

基于 mini2440 电阻式触摸屏(4):mini2440触摸屏驱动分析

2012-06-25 
基于 mini2440 电阻式触摸屏(四):mini2440触摸屏驱动分析参考:http://blog.chinaunix.net/uid-22174347-id

基于 mini2440 电阻式触摸屏(四):mini2440触摸屏驱动分析

参考:http://blog.chinaunix.net/uid-22174347-id-1786941.html

==========================================================

开发环境

编译系统 :fedora9

编译器 :arm-linux-4.4.3

主控芯片 :S3C2440

开发板 :mini2440

==========================================================

一、电阻式触摸屏工作原理 
二、 S3C2440 电阻式触摸屏接口、内部ADC结构
三、Linux输入子系统(InputSubsystem)
四、mini2440触摸屏驱动分析

==========================================================

(这部分转自:http://blog.chinaunix.net/uid-22174347-id-1786941.html 文章写得很好

四、mini2440触摸屏驱动分析

1、硬件原理图分析

  S3c2440芯片内部触摸屏接口与ADC接口是集成在一起的,硬件结构原理图请看:S3C2440上ADC驱动实例开发讲解中的图,其中通道7(XP或AIN7)作为触摸屏接口的X坐标输入,通道5(YP或AIN5)作为触摸屏接口的Y坐标输入。在"S3C2440上ADC驱动实例开发讲解"中,AD转换的模拟信号是由开发板上的一个电位器产生并通过通道1(AIN0)输入的,而这里的模拟信号则是由点触触摸屏所产生的X坐标和Y坐标两个模拟信号,并分别通过通道7和通道5输入。S3c2440提供的触摸屏接口有4种处理模式,分别是:正常转换模式、单独的X/Y位置转换模式、自动X/Y位置转换模式和等待中断模式,对于在每种模式下工作的要求,请详细查看数据手册的描述。本驱动实例将采用自动X/Y位置转换模式和等待中断模式。

注意:在每步中,为了让代码逻辑更加有条理和容易理解,就没有考虑代码的顺序,比如函数要先定义后调用。如果要编译此代码,请严格按照C语言的规范来调整代码的顺序。

2、建立触摸屏驱动程序my2440_ts.c,首先实现加载和卸载部分,在驱动加载部分,我们主要做的事情是:启用ADC所需要的时钟、映射IO口、初始化寄存器、申请中断、初始化输入设备、将输入设备注册到输入子系统。代码如下: