STM32F103ZET6开发板HID键盘用法解析
需积分: 1 43 浏览量
更新于2024-08-09
收藏 1.08MB PDF 举报
"USB接口HID设备的使用和原理,包括HID设备的特点、报表格式以及HID设备在STM32F103ZET6开发板上的应用"
在USB接口设备中,HID(Human Interface Device)设备是一种常见的类型,主要用于人机交互,如键盘、鼠标等。HID设备的优势在于其成本相对较低,并且在Windows操作系统中,从Windows 98以后的版本都内置了HID设备的驱动,使得开发者无需为这些设备编写额外的驱动程序,可以直接利用系统提供的支持进行通信。
HID设备的主要特点包括:
1. 数据交换基于名为报表的结构,设备固件需支持HID报表格式。报表可以通过控制传输和中断传输在主机和设备间传输。
2. 数据量适中,低速设备每次事务最多8字节,全速设备最多64字节,高速设备最多1024字节。报表可由多个事务组成。
3. 设备可主动向主机发送信息,例如键盘按键或鼠标移动。主机通过定期轮询获取最新数据。
4. 传输速度受限,但主机保证最低传输速率,如低速设备每10ms至少1笔事务,全速设备每1ms至少1笔,高速设备每125us至少3笔。
5. 无保证的传输速率,实际传输时间可能等于或小于规定的间隔。
在给定的STM32F103ZET6开发板上,键盘的HID报表定义如下:
- 报表计数(Report Count)为6,意味着一次可以处理6个按键的输入。
- 报表大小(Report Size)为8,表示每个按键占用8位。
- 逻辑最小值(Logical Minimum)为0,逻辑最大值(Logical Maximum)为101,覆盖了从0到101的键值范围。
- 使用页面(Usage Page)为7,表示键码使用。
- 使用最小值(Usage Minimum)和最大值(Usage Maximum)分别为0和101,定义了键值范围。
- 输入类型(Input)定义为Data和Array,表明这是输入报表。
输入报表格式如图8-4所示,包含了修饰键和6个键值,而输出报表(图8-5)则涉及指示灯状态,如Scroll Lock、Num Lock、Caps Lock等。
HID设备不仅可以向主机发送数据,也可以接收。一个设备可以有多个接口,比如一个影像设备可能使用HID接口进行亮度和对比度控制,而使用其他接口传输图像数据。USB扩音器可能使用实时传输播放语音,同时利用HID接口执行其他功能。
HID设备通过灵活的报表格式和内置的系统支持,简化了USB设备的开发流程,使其在人机交互领域广泛应用。
2020-04-16 上传
150 浏览量
2023-06-10 上传
141 浏览量
点击了解资源详情
点击了解资源详情
点击了解资源详情
2012-08-09 上传
Davider_Wu
- 粉丝: 45
- 资源: 3896
最新资源
- Fisher Iris Setosa数据的主成分分析及可视化- Matlab实现
- 深入理解JavaScript类与面向对象编程
- Argspect-0.0.1版本Python包发布与使用说明
- OpenNetAdmin v09.07.15 PHP项目源码下载
- 掌握Node.js: 构建高性能Web服务器与应用程序
- Matlab矢量绘图工具:polarG函数使用详解
- 实现Vue.js中PDF文件的签名显示功能
- 开源项目PSPSolver:资源约束调度问题求解器库
- 探索vwru系统:大众的虚拟现实招聘平台
- 深入理解cJSON:案例与源文件解析
- 多边形扩展算法在MATLAB中的应用与实现
- 用React类组件创建迷你待办事项列表指南
- Python库setuptools-58.5.3助力高效开发
- fmfiles工具:在MATLAB中查找丢失文件并列出错误
- 老枪二级域名系统PHP源码简易版发布
- 探索DOSGUI开源库:C/C++图形界面开发新篇章