文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络程序开发数据结构开发WDM型的USB设备驱动程序
精品推荐
特别推荐
·网游外挂编写完全攻略
·开发WDM型的USB设备驱动程序
·数据库设计范式深入浅出
·理解软件保护技术之序列号方式
·大型网站必鉴:分销渠道的结构
·你的代码真的很健壮吗
·利用HOOK拦截封包原理
·四种网络游戏外挂的设计方法
热点TOP10
·使用 Abbot 框架自动化测试 Eclipse 插件的用户界面 1
·Spring Integration 1.0 正式发布
·DCOM揭秘之六
·使用面向 Aspect 的编程改进模块性
·sqldatasource控件处理image类型数据
·JDBC之代码重复使用
·大型网站必鉴:分销渠道的结构
·关于电子商务人才问题

开发WDM型的USB设备驱动程序

日期:2007年8月16日 作者: 查看:[大字体 中字体 小字体]

摘要: 文章介绍了USB和WDM驱动程序的基本概念和结构,结合实例阐述了用NuMega 公司的DriverStudio工具包开发Windows 2000环境下WDM USB设备驱动程序的方法,并给出关键例程主要代码。

  关键词:USB WDM 设备驱动程序 DriverStudio

  引言

  随着微机技术水平的日益提高,传统的计算接口已经不能满足当前计算机高速发展的需求,计算机业界迫切需要新的通用型、高速总线接口。通用外设接口标准USB应运而生。USB,全称为通用串行总线(Universal Serial Bus),它是Compaq、IBM等PC大厂商联合开发的一种新型的、基于令牌的、高速的串行总线标准。开发者要设计USB设备接口,就必须首先了解USB协议,在此基础上有针对性的开发USB设备驱动程序。

  USB简介

  在众多的PC机总线中,USB以其突出的优点独树一帜:① 使用方便。支持热拔插,不涉及中断请求(IRQ)冲突等问题,能真正做到“即插即用”。②传输速率高。目前的USB 2.0协议速度高达480Mbps 。③易于扩展。通过使用Hub扩展可连接多达127个外设。④使用灵活。USB共有4种传输模式:控制(control)、同步(Synchronization)、中断(interrupt)、批量(bulk),以适应不同设备的需要。⑤独立供电。正由于上述优点,开发USB接口的设备已成为一种发展趋势。

  一个完整的USB系统包括主机系统和USB设备。所有的传输事务都是由主机发起的。一个主机系统又可以分为以下几个层次结构,如图1所示:

开发WDM型的USB设备驱动程序(图一)
图1 USB 互连通信模型

  USB总线接口包括USB主控制器和根集线器,其中USB主控制器负责处理主机与设备之间电气和协议层的互连,根集线器提供USB设备连接点。USB系统使用USB主控制器来管理主机和USB设备之间的数据传输,另外它也负责管理USB资源,如带宽等。应用软件不能直接访问USB设备硬件,而通过USB系统和USB总线接口与USB设备进行交互。

  USB设备包含一些向主机软件提供一系列USB设备的特征和能力的信息的设备描述符,用来配置设备和定位USB设备驱动程序。这些信息确保了主机以正确的方式访问设备。通常,一个设备有一个或多个配置(Configuration)来控制其行为。配置是接口(Interface)的集合,接口指出软件应该如何访问硬件。接口又是端点(endpoint)的集合,每一个与USB交换数据的硬件就为端点,它是作为通信管道的一个终点。图1显示了一个多层次结构的通信模型,它表明了端点和管道所扮演的角色。

  WDM驱动程序和USB驱动程序的分层结构

  设备驱动程序实际上是指一系列控制硬件设备的函数,是操作系统中控制和连接硬件的关键模块。它提供连接到计算机的硬件设备的软件接口。

  1、WDM 驱动程序介绍

  WDM(Win32 Driver Model)是Microsoft公司力推的一种符合Windows2k/XP下的内核模式驱动程序的分层体系结构的驱动程序模式。它源于 Windows NT的分层32位设备驱动程序模型,它支持更多的特性,如即插即用( PnP ,Plug and Play )、电源管理( PM ,Power Management )、Windows管理诊断( WMI ,Windows Management Instrumentation )和 NT 事件。它为Windows操作系统的设备驱动程序提供了统一的框架,在Windows平台上,WDM将成为主流的驱动模式。

  WDM引入了功能设备对象FDO(Function Device Object)与物理设备对象PDO(Physical Device Object)两个新类来描述硬件,一个PDO对应一个真实的硬件。一个硬件只允许有一个PDO,却可以拥有多个FDO,在驱动程序中直接操作的不是硬件而是相应的PDO和FDO。

  WDM是通过一个128位的全局唯一标识符(GUID)实现驱动程序的识别。应用程序与WDM驱动程序通信时,应用程序将每用户请求形成I/O请求包(IRP)发送到驱动程序。驱动程序识别出IRP请求后指挥硬件执行相应操作。

[1] [2] [3] [4] 下一页 



上一篇:使用Windows DNA设计、部署和管理电子商务网站(1)

下一篇:开发Windows XP-Ready的程序
相关文章:
·jsp开发教程之仿MOP论坛 三(帖子列表-上)
·EZ-USB 68013A开发指南
·用Eclipse集成GT3开发网格服务
·asp.net2.0学习历程 菜鸟到中级程序员的飞跃
·Visual Studio 2005:在 Visual C++ 中开发自定义的绘图控件
·局域网连接设备--局域网知识
·基于Java的移动游戏开发入门
相关软件:
·电脑智能驱动 集合
·C语言程序设计
·孙鑫VC++从入门到精通开发详解视频教程FLASH版
·数码智能驱动 集合
·Windows环境下32位汇编语言程序设计
·FLASH个人简历源程序(FLA)
·零起点教你如何破解软件和制作注册机 and 视频+程序

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:viphot