基于嵌入式Linux系统的触摸屏驱动的开发
本文介绍了一个在嵌入式Linux平台上编写触摸屏驱动的实例。本平台基于摩托罗拉公司的Powerpc823e CPU 芯片,并采用个性化的Linux2.4.4内核作为它的微型操作系统,介绍了如何通过对823e的SPI接口的操作实现与 触摸屏控制芯片ADS7846的通信。本文在构造硬件的基础上说明了触摸屏驱动程序的C语言实现。
引言
触摸屏因方便灵活、节省空间、直观等特点,作为嵌入式系统的输入设备越来越受各种终端产品生厂商的青睐。而linux操作系统因为有着源代码公开、便于裁减的优点,是当前嵌入式系统的一大热门选择。本文将在构造硬件的基础上,深入的讨论如何在linux操作系统里编写一个触摸屏驱动。
SPI接口的简介
串行外围设备接口SPI总线技术是摩托罗拉公司推出的一种全双工、同步串行接口,它提供了功能强大的四线接口(接收线、传输线、时钟线和从片选线)。
SPI的从设备和主设备共用一个时钟线,而时钟始终是从主设备里发送出来的。当823e是主模式的时候,片选信号线就停用,如果是从模式的话,它的从片选线低电平使能。在本例中,823e是主设备,所以我们另外选用了一个823e的GPIO(通用输入输出口)作为从设备的片选信号。大多数同步串行式数据转换器都很容易与这种接口连接,其硬件功能很强,所以,与SPI有关的软件就相当简单,使CPU有更多的时间处理其他事务。
触摸屏的硬件
触摸屏输入系统由触摸屏、触摸屏控制芯片和数据处理器三部分组成。触摸屏按其技术原理可分为五类:矢量压力传感式、电阻式、电容式、红外线式和表面声波式,其中电阻式触摸屏在嵌入式系统中用的较多。
我们选用的触摸屏是AMD公司的电阻式触摸屏AMT 9502。触摸屏控制芯片是TI公司的模数转换芯片ADS7846。该芯片支持SPI通信协议,所以我们就用823e的SPI接口与ADS7846芯片通信,从触摸屏得到的模拟信号经过模数转换器后输入作为数据处理器的823e。
软件程序
823e通过SPI接口与触摸屏控制器通信,所以对触摸屏的控制就是对SPI接口的操作。完成SPI接口驱动的编写之后,就能够与触摸屏控制器建立通信。在linux内核运行完毕之后,SPI接口要打开,并且已经分配了一部分内存供它使用。同时,SPI的中断程序已
相关文档:
2.2 安装Linux至硬盘
准备工作完成之后,就可以着手将Linux安装到硬盘中了。如今Linux的安装过程已经非常“傻瓜”化,只需要轻点几下鼠标,就能够完成整个系统的安装。尽管如此,这里仍然详细地给出安装过程的每一步。同时,对于和Windows存在显著区别的地方,如硬盘分区的组织方式,本节将做详细的讨论。 ......
首先下载两个文件:
wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
wget http://prdownloads.sourceforge.net/awstats/awstats-6.7.tar.gz
cronolog是用来改变日志的格式以适合awstats的分析
cronolog很好装,下载后解包,命令行安装
./configure
make
make install
接下来修改apache配置文件httpd.c ......
1. 首先用 db2 list database directory 命令看在系统数据库目录(System Database Directory)中有没有该数据库,如果有,应该在确定该数据库是没有用的数据库之后用 db2 drop database 数据库名将其删除。
2. 如果没有,再用 db2 list database directory on location 看在本地数据库目录(Loc ......
一、引言
想使用Linux已经很长时间了,由于没有硬性任务一直也没有系统学习,近日由于工作需要必须使用Linux下的MySQL。本以为有Windows下使用SQL Server的经验,觉得在Linux下安装MySql应该是易如反掌的事,可在真正安装和使用MySQL时走了很多弯路,遇见很多问题,毕竟Linux 和Windows本身就有很大区别。 ......