USB键盘协议中键码
- 格式:doc
- 大小:3.04 MB
- 文档页数:5


编号:嵌入式系统综合实训说明书题目:仿USB键盘文件植入器院(系):信息与通信学院专业:电子信息工程学生姓名:万玉学号: 1161170125指导教师:叶金才2015 年 1 月 11 日这次设计任务所做的工作就是实现模拟人工按键,将开发板接上位机后,不用板子上的按键,直接用程序产生键盘码,计算机收到USB键盘的键码,会执行相应的功能。
具体的动作是打开计算机的命令行,在命令行里面运行记事本,并新建一个a.txt记事本文件,并向该文件录入若干的英文字符。
运行命令行通过键盘操作是 win+R -》cmd-》notepad a.txt-》enter-》录入英文字符。
最后,会在本文介绍如何实现向电脑发送WIN+R这样的组合键键码,可以类似去模拟ALT+F4,SHIFT+1之类的按键。
关键词:ARM;USB 键盘;模拟人工按键;USB HID协议;组合键The design task is to realize the simulation of artificial work key, development board connected with a host computer, no board of the key, the direct use of program generation keyboard code, computer received USB keyboard key code, executes the corresponding function. The specific action is to open the computer command line, the command line which run Notepad, and a new a.txt notepad file, and some to the file entry English character. Run command lines through the keyboard operation is win+R - "cmd-" Notepad a.txt- "enter-" input English character.Finally, in this paper introduces how to realize the computer to send WIN+R this combination key code, can be similar to the simulated ALT+F4, SHIFT+1 and the like button.Keywords: ARM; USB keyboard keys; artificial simulation; USB HID protocol; key combination目录引言 (1)1 设计软件基础知识 (2)1.1C编译器KEIL介绍 (2)1.2ARM相关知识 (2)1.3 USB-HID简介 (2)2 模拟人工按键设计 (3)2.1 程序设计的任务要求 (3)2.2 程序的设计思路和想法 (3)2.3 报告描述符 (3)2.4 普通按键程序设计 (4)2.5 特殊(功能)按键程序设计 (6)3 功能程序设计 (7)3.1 程序总流程图 (7)3.2 开始程序的修改 (8)4 结论 (10)谢辞 (11)参考文献 (12)附录 (13)引言USB,是英文Universal Serial Bus(通用串行总线)的缩写,而其中文简称为“通串线”,是一个外部总线标准,用于规范电脑与外部设备的连接和通讯。
键盘工作原理键盘是计算机输入设备的一种,它通过按下键盘上的按键来向计算机发送输入信号。
键盘工作原理涉及到键盘的物理结构、电路连接和信号传输等方面。
一、键盘的物理结构键盘通常由多个按键组成,每一个按键上标有不同的字符、符号或者功能标识。
按键普通由塑料或者金属材料制成,上面覆盖着一个带有字符或者符号的标签,标签下方有一个弹簧。
当按键被按下时,弹簧会向下弯曲并与键盘底部的电路板接触,从而触发按键事件。
二、键盘的电路连接键盘的电路连接主要包括按键电路和扫描电路两部份。
1. 按键电路按键电路由每一个按键的开关组成。
当按键未按下时,开关处于断开状态,此时按键电路断开。
当按键被按下时,开关闭合,按键电路闭合。
按键电路的闭合与断开状态被计算机识别为不同的输入信号。
2. 扫描电路扫描电路用于检测按键的状态,并将其转化为计算机可识别的信号。
扫描电路由键盘控制器和键盘编码器组成。
键盘控制器负责接收按键电路的信号,并将其传输给键盘编码器。
键盘编码器将按键信号转化为计算机可以理解的二进制编码,然后通过计算机的通信接口发送给计算机。
三、键盘的信号传输键盘通过通信接口与计算机连接,常见的接口有PS/2接口和USB接口。
1. PS/2接口PS/2接口是一种用于连接键盘和鼠标的接口。
它通过一个小型的圆形插孔连接到计算机的主板上。
键盘通过PS/2接口与计算机进行通信。
PS/2接口使用两根线缆进行数据传输,一根用于传输数据,另一根用于传输时钟信号。
2. USB接口USB接口是一种通用的接口标准,可用于连接各种外部设备,包括键盘。
USB 接口通过一个矩形插口连接到计算机的主板上。
键盘通过USB接口与计算机进行通信。
USB接口使用四根线缆进行数据传输,分别是VCC(电源供应)、D+(数据+)、D-(数据-)和地线。
四、键盘的工作过程键盘的工作过程可以分为按键、扫描和编码三个步骤。
1. 按键当用户按下键盘上的按键时,按键会被按下,触发相应的按键事件。
usb协议深入解读USB(Universal Serial Bus)是一种通用的串行总线标准,用于连接电脑与外部设备,如键盘、鼠标、打印机、存储设备等。
USB协议定义了电脑和外部设备之间的通信规则,保证了设备的互操作性和兼容性。
USB协议的工作原理是将数据分成小的信息包(packet),通过USB线缆传输。
数据传输分为Control、Bulk、Interrupt和Isochronous四种传输类型。
控制传输用于设备配置和命令交互,批量传输用于大容量数据传输,中断传输适用于延迟要求较高的设备,同步传输用于实时流媒体数据传输。
USB协议采用主从架构。
电脑作为主机(host),外部设备作为从设备(device)。
主机负责控制和管理设备的连接和通信,从设备根据主机的指令执行任务。
每个设备都有一个唯一的设备地址,主机通过唯一的地址识别和寻找特定的设备。
USB协议还定义了一种层次结构,包括物理层、总线层、设备层和应用层。
物理层负责USB线缆的传输、信号传输和电气特性。
总线层负责数据帧的传输、错误检测和纠正,以及设备的连接和断开管理。
设备层负责设备地址分配、设备功能描述和配置管理。
应用层根据设备的功能需求进行数据交换和通信。
USB协议还支持热插拔功能,即在不关机的情况下插入或拔出外部设备。
这得益于协议对设备的供电和识别机制。
当设备插入时,主机会为其提供所需的电源,然后通过设备描述符和配置描述符来识别设备的类型和功能。
通过热插拔功能,用户可以方便地连接和断开设备,无需重新启动电脑。
在USB协议中,还有一种特殊的设备称为HID(Human Interface Device),用于连接输入设备(如键盘、鼠标)和输出设备(如显示器)。
HID设备使用标准的USB报告描述符进行通信,主机通过解读报告描述符来识别和操作设备。
这种设计使得不同品牌的键盘和鼠标可以通用于各种操作系统和电脑设备。
需要注意的是,USB协议并不仅限于连接电脑和外部设备。
USB_HID协议中文版——USB接口HID设备
一、什么是USBHID协议
USB HID(Human Interface Device)协议是一种应用在USB接口上
的应用层通信协议,它不仅定义了用于特定应用的设备的接口规范,而且
可以帮助开发者更快捷、更准确地实现其产品化。
USB HID是USB接口应用层通信协议中最常用的一种协议,它通过主
机和设备之间的endpoints来建立简单的通信框架,从而实现设备连接和
输入输出控制。
最初被设计用于用户界面(如鼠标、键盘等),但它的应
用领域已经不仅限于此,无论是电源管理控制、温度控制器、读卡器、按键、触摸板或其他交互式设备,都可以通过USB HID来实现。
二、USBHID协议框架
USBHID协议规范定义了主机与设备之间的通信机制,其使用形式类
似于USB驱动程序,主要有以下几个部分:
1、Device Definition:描述支持HID协议的设备的特性,包括设备
所具备的功能,如鼠标按键、键盘、触摸板等;
2、Descriptor:定义设备的接口,描述设备与用户界面之间的结构
关系;
3、Report Descriptor:描述报告的格式,定义HID设备的所有输入
和输出数据;
4、Input Report:指从键盘、鼠标、按钮等设备向主机发送的数据;
5、Output Report:指从主机向设备发送的数据,以从设备更改状态
或进行其他操作;
6、Feature Report:当输入输出数据不足以满足需求时。