文档介绍:摘要: 分析了 Windows2000 下 USB 客户程序的框架,并就如何开发 Windows2000 下 USB 接口的 IC卡读写装置客户程序进行了阐述。 Windows2000 下 USB 接口的 IC 卡读写装置客户程序设计关键词: USB 总线客户程序 IC卡 Windows2000 IC卡是高科技的产物,它广泛用于银行、电信、交通运输、小区管理、校园管理等领域,体现了它的巨大优越性。作者在开发一个 IC卡机房收费系统时遇到了新问题,那就是当计算机和 IC卡装置通信的时候,如果采用传统的串行通信方式固然可行,但供电必须休用单独的外置电源,这样加大了读卡装置的体积。通过翻阅资料发现 USB 接口可以输出 5V电压、 500mA 的电流,能满足 IC卡装置对电源的要求。另外,USB 接口和 Windows2000 操作系统能良好地融合,支持即插即用和电源管理的新特性,使得其与主机的相连日趋简单和轻松。因此决定开发 USB 接口的 IC卡读写装置,一方面可以解决供电问题,使读写装置使用方便;另一方面也可以满足其它方面的性能需求。 USB 需要主机硬件、操作系统和外部设备三个方面的支持才能工作。目前主板一般都有支持 USB 功能的控制芯片张和 USB 接口插座。微软 Win9x 操作系统以及 Windows2000 均支持 USB, 并提供了底层的驱动程序, 新版的 Linux 也支持 USB 。在 USB 设备方面,目前有许多公司生产支持 USB 的微控制器,比较著名的有 Motorola 公司的 MC68HC05 系列,Intel 公司的 80931HA,Cypress 公司的 CY7C63 系列等。可以说,USB 的发燕尾服已得到各软硬件厂商的支持。前景光明。 1 Windows2000 下的 USB 架构主机要使用 USB 设备,必须有驱动程序。微软操作系统中,Windows98 支持 USB, 不支持 USB, ( Windows2000 )支持 USB 。 Windows2000 和 Windows98 对 USB 的支持主要是基于 WDM ( Window s 驱动程序模型)技术,因此 USB 驱动程序是 WDM 驱动程序。 WDM 驱动程序采用分层结构,由两部分组成,一个为功能驱动程序,即通常所说的驱动程序,它负责指挥硬件工作,由类驱动程序和小类驱动程序构成;另外一个为总线驱动程序,它负责管理计算机和硬件之间的连接。在功能驱动程序上层和下层,一些设备还具有过滤驱动程序。它们的作用是监视功能驱动程序执行 I/O 操作及修改已有的功能驱动程序。 Windows2000 USB 驱动程序框架由 USB 功能驱动程序和 USB 总线驱动程序组成。 SUB 总线驱动程序由 Windows2000 提供,包括 USB 主控制器驱动程序( 或 , 它们分别支持不同的 SUB 主控制器)、 USB HUB 驱动程序( )以及为控制器驱动程序使用的类驱动程序( )。它们一起组成了 USB 驱动程序栈,可为所有的 USB 设备驱动程序共用。用户或厂商所写的针对特定 USB 设备的 WDM 驱动程序称为功能驱动程序或客户驱动程序(位于 U