bios下的usb驱动研发研究报告.doc
约25页DOC格式手机打开展开
bios下的usb驱动研发研究报告,bios下的usb驱动研发研究报告本文共计25页,12975字;摘要众所周知,usb是通用串行总线的简称。从字面的意思来看,本文是关于计算机接口的usb的一种规范╠╠uhci。uhci是通用主机控制器接口的简称。首先我们先从分析linux下uhci源码的特点入手,然后在讲述如何与主机控制器通信和如何通过驱动主机控制器。...
内容介绍
此文档由会员 灵活的胖子 发布
BIOS下的USB驱动研发研究报告
本文共计25页,12975字;
摘要
众所周知,USB是通用串行总线的简称。从字面的意思来看,本文是关于计算机接口的USB的一种规范――UHCI。UHCI是通用主机控制器接口的简称。
首先我们先从分析LINUX下UHCI源码的特点入手,然后在讲述如何与主机控制器通信和如何通过驱动主机控制器。
本文叙述了软件的开发背景、相关技术知识、软件的总体设计、详细设计以及程序编写及调试过程中遇到的问题及解决方法。
关键字:
BIOS,驱动程序,通用串行总线,通用主机控制器接口
ABSTRACT
As it is known to all that USB is short for Universal Serial Bus.From the meaning of word,this article tells something about computer interfaces about UHCI,Universal Host Controller Interfaces for short,a kind of specification of USB .
目录
目录 2
摘要 4
ABSTRACT 5
引言 6
第一章 软件开发背景 7
第二章 相关技术介绍 8
2.1 USB数据流模型 8
2.1.1实现者的视图 8
图2-1 USB需实现的区域 8
2.1.2 USB通信流 9
图2-2 USB主机/设备的细节图 9
图2-3 USB通信流 10
2.1.3 通道 10
2.1.3.1 流通道 10
2.1.3.2 消息通道 10
2.1.4 传送类型 11
2.1.5 传送的总线访问 11
2.2 USB设备架构 11
2.2.1 USB设备状态 11
图2-4设备状态转换图 12
2.2.2 列举 12
2.2.3通用USB设备操作(Generic USB Device Operations) 13
2.2.3.1动态插接与拔开 13
2.2.3.2地址分配 13
2.2.3.3配置 13
2.2.3.4数据传送 13
2.3 USB主机:硬件和软件 14
图2-5通信模型层次关系图 14
图2-6 主机通信图 15
第三章 驱动程序的研究与设计 16
3.1驱动程序设计方法和思想 16
3.2 运行、开发和调试环境 16
3.2.1 运行环境 16
3.2.2 开发环境 16
3.2.3 调试环境 16
3.3 数据结构设计 17
3.3.1 struct usb_device 17
3.3.2 struct usb_device_descriptor 18
3.3.3 struct usb_config_descriptor 18
3.3.4 struct usb_interface 19
3.3.5 struct usb_interface_descriptor 19
3.3.8 struct usb_endpoint_descriptor 20
3.4 功能模块的设计 21
3.4.1 void usb_connect(struct usb_device *dev); 21
3.4.2 int usb_new_device(struct usb_device *dev); 21
3.4.3 int usb_set_address(struct usb_device *dev); 22
3.4.4 int usb_get_descriptor(struct usb_device *dev, 22
3.4.5 int usb_get_device_descriptor(struct usb_device *dev); 22
3.4.6 int usb_get_configuration(struct usb_device *dev); 23
3.4.7 int usb_parse_configuration(struct usb_device *dev, 23
3.4.8 static int usb_parse_interface(struct usb_device *dev, 23
3.4.9 static int usb_parse_endpoint(struct usb_device *dev, 24
3.4.10 int usb_set_configuration(struct usb_device *dev, 24
第四章 软件编写调试中的问题及解决方法 24
结束语 25
致谢 25
参考文献 25
部分参考文献
[1]《USB外围设备设计与应用》 许永和 编著 健莲科技 改编 中国电力出版社
[2]《USB大全》 (美)Jan Axelson著 陈逸 等译 中国电力出版社
[3]《USB1.1协议》 电子文档
[4]《80*86汇编语言程序设计教程》 杨季文 等编著 钱培德 审 清华大学出版社
[5]《440LXAGPset》 电子文档
[6]《PC技术内幕》 Frank van Gilluwe 著 精英科技 译 中国电力出版社
[7]《从8086到Pentium Ⅲ 微型计算机及接口技术》
马维华 奚抗生 易仲芳 毛建国 编著 科学出版社
本文共计25页,12975字;
摘要
众所周知,USB是通用串行总线的简称。从字面的意思来看,本文是关于计算机接口的USB的一种规范――UHCI。UHCI是通用主机控制器接口的简称。
首先我们先从分析LINUX下UHCI源码的特点入手,然后在讲述如何与主机控制器通信和如何通过驱动主机控制器。
本文叙述了软件的开发背景、相关技术知识、软件的总体设计、详细设计以及程序编写及调试过程中遇到的问题及解决方法。
关键字:
BIOS,驱动程序,通用串行总线,通用主机控制器接口
ABSTRACT
As it is known to all that USB is short for Universal Serial Bus.From the meaning of word,this article tells something about computer interfaces about UHCI,Universal Host Controller Interfaces for short,a kind of specification of USB .
目录
目录 2
摘要 4
ABSTRACT 5
引言 6
第一章 软件开发背景 7
第二章 相关技术介绍 8
2.1 USB数据流模型 8
2.1.1实现者的视图 8
图2-1 USB需实现的区域 8
2.1.2 USB通信流 9
图2-2 USB主机/设备的细节图 9
图2-3 USB通信流 10
2.1.3 通道 10
2.1.3.1 流通道 10
2.1.3.2 消息通道 10
2.1.4 传送类型 11
2.1.5 传送的总线访问 11
2.2 USB设备架构 11
2.2.1 USB设备状态 11
图2-4设备状态转换图 12
2.2.2 列举 12
2.2.3通用USB设备操作(Generic USB Device Operations) 13
2.2.3.1动态插接与拔开 13
2.2.3.2地址分配 13
2.2.3.3配置 13
2.2.3.4数据传送 13
2.3 USB主机:硬件和软件 14
图2-5通信模型层次关系图 14
图2-6 主机通信图 15
第三章 驱动程序的研究与设计 16
3.1驱动程序设计方法和思想 16
3.2 运行、开发和调试环境 16
3.2.1 运行环境 16
3.2.2 开发环境 16
3.2.3 调试环境 16
3.3 数据结构设计 17
3.3.1 struct usb_device 17
3.3.2 struct usb_device_descriptor 18
3.3.3 struct usb_config_descriptor 18
3.3.4 struct usb_interface 19
3.3.5 struct usb_interface_descriptor 19
3.3.8 struct usb_endpoint_descriptor 20
3.4 功能模块的设计 21
3.4.1 void usb_connect(struct usb_device *dev); 21
3.4.2 int usb_new_device(struct usb_device *dev); 21
3.4.3 int usb_set_address(struct usb_device *dev); 22
3.4.4 int usb_get_descriptor(struct usb_device *dev, 22
3.4.5 int usb_get_device_descriptor(struct usb_device *dev); 22
3.4.6 int usb_get_configuration(struct usb_device *dev); 23
3.4.7 int usb_parse_configuration(struct usb_device *dev, 23
3.4.8 static int usb_parse_interface(struct usb_device *dev, 23
3.4.9 static int usb_parse_endpoint(struct usb_device *dev, 24
3.4.10 int usb_set_configuration(struct usb_device *dev, 24
第四章 软件编写调试中的问题及解决方法 24
结束语 25
致谢 25
参考文献 25
部分参考文献
[1]《USB外围设备设计与应用》 许永和 编著 健莲科技 改编 中国电力出版社
[2]《USB大全》 (美)Jan Axelson著 陈逸 等译 中国电力出版社
[3]《USB1.1协议》 电子文档
[4]《80*86汇编语言程序设计教程》 杨季文 等编著 钱培德 审 清华大学出版社
[5]《440LXAGPset》 电子文档
[6]《PC技术内幕》 Frank van Gilluwe 著 精英科技 译 中国电力出版社
[7]《从8086到Pentium Ⅲ 微型计算机及接口技术》
马维华 奚抗生 易仲芳 毛建国 编著 科学出版社