哈尔滨工程大学本科生毕业论文
第 1 章 绪论
1.1 USB 简介
USB 是由世界著名计算机和通信公司等共同推出的新一代接口标准,
全称为 Universal Serial Bus(通用串行总线)
[1]
,是一种快速、灵活的总线
接口。它是为了解决日益增加的 PC 外设与有限的主板插槽和端口之间的矛
盾而制定的一种串行通信标准。USB 应用十分广泛,并具有下述优点:
1、适用于多种外设,使它不需要为不同的外设准备不同的接口和协议;
2、Windows 能自动检测到 USB 设备的热插拔,并自动配置;
3、PC 机上的接口线非常紧缺,而 USB 设备并不需要用户设置端口故
无论从用户使用方便性,或从对资源的占用方面看,USB 都很优秀;
4、当接入一个 USB 设备时,全速 USB 接口可达 12Mbit/s。考虑到状态、
控制和出错信息,最大理论速度仍可达到 9.6Mbit/s,这是其他串行接口协议
所不能比拟的,且 USB 也支持 1.5Mbit/s 的低速传输。
5、USB 接口芯片价格低廉,这也大大促进 USB 设备的开发与应用。
在 USB 出现之前,计算机典型接口有并行口、串行口、鼠标口、键盘
口、显示器口,及各种卡式接口等,与这些接口对应的有各种不同的电缆,
在传输速度方面,这些接口都存在速度偏低的问题。在技术方面,这种设计
容易产生 I/O 冲突,中断不够用,以及对于每一种新的外设都必须设计新的
接口卡等缺点。当今的计算机外部设备,都在追求高速度和高通用性。USB
接口适应了这种要求,并以其速度快、使用方便、成本低等优点,迅速得到
了众多 PC 厂商和半导体厂商的大力支持,外设向 USB 过度成为必然趋势。
1.2 USB 驱动程序的意义
如果 PC 主机不知道如何与 USB 外设通信,那么这个 USB 外设一点用
处都没有,人机接口设备(HID)
[2]
类是 Windows 完全支持的 USB 设备类型
中的一种,应用程序可以使用操作系统内设置的驱动与 HID 通信,但与
HID 通信不像打开一个端口,设定几个参数,然后就可以读写数据那么简单,
在应用程序能与 HID 交换数据之前,它先要找到设备,获取有关它的报告
信息。为做到这些,应用程序必须通过访问通信 API 函数,使位于上层的应
用程序与位于下层的设备驱动程序进行数据交换。应用程序可以使用任何能
访问 API 函数的程序语言,VC++是一种能访问 API 函数的功能强大的语言,
因此,我们应用 Visual C++6.0 环境下编写与 USB 设备通信的 Windows 程序。
1
评论25