嵌入式Linux下键盘驱动的设计与实现.pdfVIP

嵌入式Linux下键盘驱动的设计与实现.pdf

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

《自动化技术与应用2010年第29卷第3期

ComputerApplications

芯片。该芯片能自动完成8位LED数码管的动态扫描数据格式见图2。在总线上传输的字节数没有限制。

和最多64(8*8)个按键扫描检测,大大减轻了嵌入式系统起始位读写位ACK位停止位

用于键盘处理的工作时间和程序负担,使它能集中资源lI///

进行信号的检测和控制。I藿垦饕垦l重口口圈口翻口

ZLG7290芯片与处理器S3C2410x之间采用IIC总

线方式通讯,见图1,所以对键盘的控制可通过操作IIC

数据

总线来实现。完成了IIC总线驱动的编写之后,只要设.

图2IIC总线数据格式

置IIC从设备地址为ZLG7290地址就能够与ZLG7290芯

片建立通信。.

键值读取采用中断方式,在键盘按下后在INT引脚4lIC驱动程序结构

产生中断触发电平通知处理器(键盘动作由芯片ZLG7290Linux系统中,每个打开的文件都继承了某类文件

检测),之后处理器通过IIc总线读取芯片ZLG7290键值操作表,用户基于该文件的函数操作表来对该文件操

寄存器中保存的键值。作,对于设备文件来说,文件对象继承了它的主设备号

所在驱动程序的文件操作表。设备的文件操作表是设

3IIC工作原理备驱动的起点,但往往并不在这个层次上直接完成设备

IIC(Inter—IC)总线是Philips公司推出的一种同步串操作。而是采用了分层设计的思想l3】。如果在某个层次

行数据传输的标准总线,其标准总线传输速率为100kb/上对不同对象的某类操作具有某种共性,那么就可以像

S,增强总线可达400kb/s,总线驱动能力为400pF。它是提取“公因式”那样将这类操作抽象出来,然后建立更

同步通信的一种特殊形式,具有接口线少、控制方式简低一级的操作层次来区分不同的对象,这样就形成了不

单、器件封装形式小、通信速率较高等优点。IIC总线同层次的驱动接口。

包括两根双向信号线:串行数据线(SDA)和串行时钟线

SCL)。SDA(主要用于数据传输,SCL主要用于时钟同步。

按照总线规范版本的不同,IC总线可I构成多主和

主从系统。在多主系统中,总线本身提供了一种冲突检

测的方法,当多个挂载在总线上的设备试图控制总线进

行通信时,IIC能够有效地管理多个挂载在总线上的设

备。本系统中,IIC总线采用主从结构,即总线上只有一

●■—■I■

个主控节点,其它设备都是从设备。总线上设备的寻址

由器件地址连线决定,与总线相连的每个器件都对应一

个特定的地址,采用软件寻址方式,并且通过访问地址

的最低位来决定读写方向。

图3IIC驱动程序模块结构图

¥3C2410x提供了符合IIC协议的双向数据线IICSDA

和IICSCL在主机总线和连接到IIC总线的外部设备之间在Linux中,IIC驱动程序在drivers/IIC目录中,分为

传递信息,在IICSCL高电平期间,IICSDA的下降沿触发一

文档评论(0)

134****7660 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档