linux键盘驱动的移植分析及实现

linux键盘驱动的移植分析及实现

ID:5304636

大小:212.17 KB

页数:3页

时间:2017-12-07

linux键盘驱动的移植分析及实现_第1页
linux键盘驱动的移植分析及实现_第2页
linux键盘驱动的移植分析及实现_第3页
资源描述:

《linux键盘驱动的移植分析及实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第31卷 第2期计 算 机 工 程2005年1月Vol.31№2ComputerEngineeringJanuary2005+·开发研究与设计技术·文章编号:1000—3428(2005)02—0211—03文献标识码:A中图分类号:TP334.23Linux键盘驱动的移植分析及实现林树新,吴朝晖(浙江大学计算机学院,杭州310027)摘要:阐述了键盘的工作原理,对Linux下的键盘驱动程序在不同体系结构之间的差异进行了分析,同时提出了Linux键盘驱动从x86体系到ARM体系的移植实现方案。针对在实际应用中用户对键盘的特殊需求提出

2、了相应的实现方法。关键词:嵌入式系统;键盘驱动;移植;LinuxAnalysisandImplementationofPortingLinuxKeyboardDriverLINShuxin,WUZhaohui(CollegeofComputerScience,ZhejiangUniversity,Hangzhou310027)【】AbstractThisarticledescribesthekeyboardtheoryandanalysesthedifferenceofLinuxkeyboarddriversbetweendiffe

3、rentarchitectures.Accordingtotheanalysis,thispaperpresentsanapproachtoportthekeyboarddriverfromthex86architecturetotheStrongArmarchitecture.Intheend,somesuggestionsareprovidedtoimplementspecialkeyboardsforspecificembeddedapplications.【】KeywordsEmbeddedsystem;Keyboarddr

4、iver;Porting;Linux在面向大型旋转机械的故障诊断嵌入式系统的“”863键盘模式有4种,在Linuxkbd_mode下可以用[-a

5、-u

6、-项目中,我们采用了StrongArm的SA1110处理器来搭建硬件k

7、-s]41来设置和显示模式,这种模式的对应关系如图所平台(无SA1111协处理器),以裁减后的ArmLinux作为操作示。系统来搭建嵌入式系统的软件开发平台。我们在对内Linux(1)Scancodemode(RAW)模式:将键盘端口上读出的扫描码放入缓冲区,通过参数s可以设置;核打补丁之后,准备将其移植到我们的

8、目标板上,然而出现(2)Keycodemode(MEDIUMRAW)模式:将扫描码过滤为键盘了在移植到目标板之后无法支持键盘的情况,主要表现在键码放入缓冲区,通过参数k可以设置;盘产生按键动作的时候,产生oops消息,导致内核的(3)ASCIImode(XLATE),模式:识别各种键盘码的组合转换为panic。在查阅了大量资料以及ArmLinux的邮件列表后,发TTYa终端代码放入缓冲区,通过参数可以设置;现也有相当一部分人遇到同样的情况,而且也没有文章提出(4)UTF-8mode(Unicode)模式:Unicode模式基本上与X

9、LATE完整的解决方案。在此情况下,我们进行了Linux下键盘驱相同,只不过可以通过数字小键盘间接输入Unicode代码,通过参动在不同体系之间移植的研究并且完成了从x86体系到数u可以设置。1.2扫描码StrongArm体系的移植。一个基本按键的扫描码由31个字节组成:个字节的接通1键盘工作原理扫描码和2个字节的断开扫描码。其中第12和第个字节相当键盘产生按键动作之后,键盘上的扫描芯片(一般为同,中间字节是断开标志F0HB。例如键的接通扫描码是8048)获得键盘的扫描码,并将其发送到主机端。在主机端32H,断开扫描码是F0H32H

10、,B键被按下时,32H被发送出的处理过程为从端口读取扫描码之后,对键盘模式作一个判去,如果移植按住不放,则键盘将以按键重复率不停地发送断,如果是RAW模式,直接将键盘扫描码发送给应用程32H,直到该键释放,才发出断开扫描码F0H32H。扫描码序,如果是其他模式,就将扫描码转化成为键盘码,然后再与按键的位置有关,与该键的ASCII码并无对应关系。键盘判断模式,以决定是否将键盘码直接发送给应用程序,如果上还有部分扩展键()功能键和控制键等,这些键的扫描码由是或XLATEUnicode模式,则将键盘码再次转化成为符号5个字节组成,与基本键

11、的扫描码相比,接通扫描码与断开码,然后根据对符号码解析,获得相应的处理函数,并将其扫描码前各多了一个固定值字节E0H。例如Home键的接通送到TTY1设备的缓存中。模式判断的对应关系如图所示。扫描码是E0H70H,断开扫描码是E0HF

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。