usb接口通信(驱动)的设计与实现

usb接口通信(驱动)的设计与实现

ID:47628862

大小:331.89 KB

页数:58页

时间:2019-10-02

usb接口通信(驱动)的设计与实现_第1页
usb接口通信(驱动)的设计与实现_第2页
usb接口通信(驱动)的设计与实现_第3页
usb接口通信(驱动)的设计与实现_第4页
usb接口通信(驱动)的设计与实现_第5页
资源描述:

《usb接口通信(驱动)的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、WDM是“Windows驱动程序模型”的简称,即“WindowsDriverModel”。实际上它是一系列集成在操作系统Z中的常规系统服务集,用于简化硬件驱动程序的编写,并保证它们在Windows98/Me/2000'

2、1的二进制兼容,WDM(WindowsDriverModel)模型是从WinNT3.51和WinNT4的内核模式设备驱动程序发展而来的。WDM主要的变化是增加了对即插即用、电源管理、WindowsManagementInterface(WMI)>设备接口的支持。WDM模型的主要口标,是实现能够跨平台使用、更安全、

3、更灵活、编制更简单的Windows设备驱动程序。WDM采用了“基于对象”的技术,建立了一个分层的驱动程序结构。WDM首先在Windows98中实现,在Windows2000中得到了进一步的完善,并在后续开发的Windows操作系统屮都将存在,比如WindowsMe和WindowsXP。微软在通过WDM模型的引入,希望减轻设备驱动程序的开发难度和周期,逐渐规范设备驱动程序的开发,应该说,WDM将成为以后设备驱动程序的主流。USB技术的全称是通用串行总线,是英文UniversalSerialBus的缩写。它是一种应用在PC领威的新型

4、接口技术,虽然USB2.0已经被广泛应用,但是初始的Windows2000是支持USB1.0协议的,如杲希望支持USB2.0协议,需要在微软网站上下载升级包。实际上,对于键盘或者鼠标来说,传输的速度非常小,使用USB1.0或者是USB2.0的区别并不大。闪存盘之类的存储设备,则需要重视传输速度。USB1.0版本主要应用在鼠标,键盘等HID设备上,这就是本驱动程序中引用的头文件版本是USB1.0的原因。本毕业设计的口的是希望对Windows2000操作系统体系结构和驱动程序开发以及调试等方而的问题有一个比较深入的了解,对USB办议

5、和USB体系冇做一个比较深入的了解。并开发出一个USB键盘驱动。这个USB键盘驱动程序应当可以替代系统原有的键盘驱动程序,并可以正常工作。本论文设计的驱动程序在Windows2000下运行,开发环境为VC6.0和DDK2000。1WDM驱动程序模型概述驱动程序在任何操作系统下都和系统内核有着密切的关系。设备驱动程序是一个包含了许多操作系统可调用例程的容器,这句WalterOney曾说过的话,抽象的描述了设备驱动程序的本质。1.1Windows2000概述图1一1中概括了Windows200系统中的组件,Windows2000操作

6、系统是由不同层次的模块共同组成的。该图着重描述了驱动程序开发者所关心的特征。工作在Windows2000操作系统平台上的软件要么执行在用户模式中,要么执行在内核模式屮。当用户模式程序需耍读取设备数据时,就调用Win32API函数,如ReadFile.Win32子系统模块通过调用平台相关的系统服务接口实现API,而平台相关的系统服务将调用内核模式支持例程。在ReadFile调用屮,调用首先到达系统DLL(NTDLL.DLL)中的一个入口点,NtReadFile函数。然后这个用户模式的N(ReadFile函数接着调用系统服务接口,最

7、后由系统服务接口调用内核模式中的服务例程,该例程同样名为NtReadFileo图1—1Windows组件模型系统中还有许多与NtReadFile相似的服务例程;它们同样运行在内核模式屮,为应用程序请求捉供服务,并以某种方式与设备交互。这些服务例程首先检查从用户态传递给它们的参数以保护系统安全或防止用户态程序非法存取数据,然后创建一个称为T/0请求包(IRP)”的数据结构,并把这个数据结构送到某个驱动程序的入口点。驱动程序完成一个1/0操作后,通过调用一个特殊的内核模式服务例程来完成该IRPo完成操作是处理IRP的最后动作,它使等

8、待的应用程序恢复运行。1.2Windows2000中的驱动程序类型图1—2Windows2000小的设备驱动程序种类Windows2000系统可以使用多种驱动程序,图1・2显示了其屮几种。•虚拟设备驱动程序(VDD)可以使DOS应用程序访问x86平台上的破件。VDD通过屏蔽I/O权限掩码来捕获端口存取操作,它基本上是模拟硕件操作,这对于那些直接对裸机硬件编程的应用程序特别有用。尽管这种驱动程序在Windows98和Windows2000屮共享一个名称并且有相同的功能,但实际上它们的工作方式完全不同。我们用VDD缩写代表这种驱动程

9、序,用VxD缩写代表Windows98中的虚拟设备张动程序以示区别。内核模式驱动程序的分类包含许多子类。PnP驱动程序就是一种遵循Windows2000即插即用协议的内核模式驱动程序。•WDM张动程序是一种PnP动程序,它同时还遵循电源管理协议,并能在Windo

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

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

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