LINUX下USB的自动识别和驱动程序及其相关内核代码的分析.doc

上传人:laozhun 文档编号:2387993 上传时间:2023-02-17 格式:DOC 页数:3 大小:18KB
返回 下载 相关 举报
LINUX下USB的自动识别和驱动程序及其相关内核代码的分析.doc_第1页
第1页 / 共3页
LINUX下USB的自动识别和驱动程序及其相关内核代码的分析.doc_第2页
第2页 / 共3页
LINUX下USB的自动识别和驱动程序及其相关内核代码的分析.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《LINUX下USB的自动识别和驱动程序及其相关内核代码的分析.doc》由会员分享,可在线阅读,更多相关《LINUX下USB的自动识别和驱动程序及其相关内核代码的分析.doc(3页珍藏版)》请在三一办公上搜索。

1、Linux下USB的自动识别和驱动程序及其相关内核代码的分析 目  录1  前言12  基于Linux下USB设备识别技术22.1必要说明23  MAD器件及其PCB43.1器件43.2布线53.3跳线配置53.4开关53.5 LEDS54  MAD固件源代码及其分析64.1  硬件抽象层64.2  D12命令接口94.3中断服务例程94.4 USB标准请求114.5厂商请求114.6主循环125  MAD设备驱动程序及所涉之内核代码的分析145.1概念中的驱动程序145.2  Linux内核模块(LKM

2、)与驱动模块以及1个范例模块155.31个范例性应用程序165.4 MAD的驱动程序185.5第1次跟踪内核及运行结果235.6更多内核设施和机制295.71些讨论306结论31参考文献32致    谢33摘  要  本文介绍了1个事实上的USB设备MiniAngelDaemon(MAD或简称MN)。理想中的MAD具有1些标准的输入接口,如温度探头、光探头、湿度探头等,以及标准输出接口,如各类电器的控制等。这正是MAD命名的由来。这个版本的MAD尚未实现如此丰富的功能。目前她的固件和驱动程序可以完成USB的标准请求,作为USB设备这是必须的。在

3、应用程序的控制下,她还能够控制其上的两个LED(如果换用合适的继电器,可以控制直接启动的电器,如台灯)。本文力图通过硬件和编程来实现USB在Linux下像Windows中1样实现完全”即插即用”。    整个项目包括:硬件设计:芯片的选择、制作PCB( 印刷电路板)以及调试;固件设计:整体构架、规划、调试;驱动程序:构架、调试以及几个测试用的应用程序。关键词: USB ;单片机 ;Linux。AbstractHere we introduce a defacto USB device named as MiniAngelDaemon (short for MAD

4、or MN). Maybe as a mature product, at last MAD will have some standard INPUT port such as temperature-sensor/photosenstive -sensor/humidity-sensor; and some standard OUTPUT port, such as kinds of controller for equipments. This is the reason for the name of “ MiniAngelDaemon “.    But

5、 now, there is a lack of those function. At this moment her FirmWare and Driver can work out USB standard request like all USB devices. And under a Application, you can turn on or off the LEDs on MAD (of course, choose suitable relay, MAD can control switch-type equipm like desk lamp). This text try

6、 to make it realization which is completely “plug and play”(PNP)of carrying out the equipments of USB to be under the Linux as Windows by hardware and programming.    The whole project includes: HardWare Design: make sure which chip(s) should be installed and make PCB (Printed Circuit

7、 Board) and test; FirmWare Design: make sure the whole architecture and the layout of some data structure and test/debug; Driver Design: study the main frame of Linux USB Driver and some kernel knowledge and test it and some demo applications.Keywords: USB ;MCU ;Linux.1前言Linux操作系统是1个源码公开、结构清晰、功能强大,且

8、已成为1个稳定可靠功能完善的系统,其开发群体的有效组织和高效工作,使得linux系统稳定发展并得到良好维护。USB是英文”Universal Serial Bus”的缩写,意为”通用串行总线”,是由Compaq(康柏)、DEC、IBM、Intel、NEC、微软以及Northern Telecom(北方电讯)等公司于1994年11月共同提出的,其主要目的就是为了解决接口标准太多的弊端。USB使用1个4针插头作为标准插头,并通过这个标准接头,采用菊花瓣形式把所有外设连接起来,它采用串行方式传输数据,目前最大数据传输率为12Mbps, 支持多数据流和多个设备并行操作,允许外设热插拔。目前,USB接口

9、虽然只发展了2代(USB1.0/1.1,USB2.0),但是USB综合了1个多平台标准的所有优点 - 包括降低成本,增加兼容性,可连接大量的外部设备,融合先进的功能和品质,使其逐步成为PC接口标准,进入了高速发展期。    USB设备越来越多,而Linux在硬件配置上仍然没有做到完全即插即用,对于Linux怎样配置和使用他们,也越来越成为困扰我们的1大问题,正确支持和配置常见的USB设备,就是其使用必不可少的关键1步,我将着力从Linux系统下设备驱动的架构,去阐述怎样去使用和配置以及怎样编制USB设备驱动。对于1般用户,可以使他们明晰Linux设备驱动方式,为更好地配置和使用USB设备提供了方便;而对于希望开发Linux系统下USB设备驱动的程序员,提供了初步学习USB驱动架构的机会。 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号