文章插图
这次,我们将使用一个示波器来分析电信号,看看USB键盘是如何工作的 。首先,连接USB键盘之前的示波器显示两条信号线,“D+(黄色)”和“D-(绿色)” 。
文章插图
当将戴尔USB键盘插入示波器时,D +保持相对较低,但D-移动到更高的位置 。
文章插图
低 D + 和高 D- 表示 USB 键盘在“低速”下处于空闲状态 。
文章插图
换句话说,这种信号变化表明USB键盘已连接到设备,并且连接处于低速状态 。
文章插图
当尝试连接另一个USB键盘时,这似乎是“高速(最大传输速度为480 Mbps)”,D +移动到高位置,D-移动到低位置 。
文章插图
按下一个键不会改变示波器波形,因为USB键盘通信可以从PC端开始 。但这一次,将它连接到一根特殊的电缆上,以便示波器可以反射来自USB键盘的信号 。
文章插图
然后在示波器上产生信号 。
文章插图
缩放时看起来像这样 。
文章插图
将缩放后的波形记录为屏幕截图,以详细分析波形...
文章插图
在Photoshop中合并 。
文章插图
当把它打印在纸上时,它看起来像这样 。
文章插图
大多数部件的波形向相反方向移动,例如“D +高,D-低”或“D +低,D-高”,但在某些地方“D +低,D-也低” 。有一个部分在状态中 。
文章插图
这是一个称为单端零 (SE0) 的条件 。
文章插图
当SE0显示在波形中时,它看起来像这样 。
文章插图
据说SE0继续2位的事实表明“数据包结束”......
文章插图
可以看到此波形包含三个主要数据包 。
文章插图
此外,D+为低且D-为高的状态称为“J状态”,D +为高且D-为低的状态称为“K状态”...
文章插图
如果为每个位输入 J 状态和 K 状态,则如下所示 。
文章插图
J 状态在数据包结束后持续一段时间,K 状态是数据包的起点 。起初,它总是以模式“KJKJKJKK”开头,但由于这显示了信号的同步部分,称为“同步数据包”,因此实际数据包含在后续部分中 。
文章插图
数据包中的数据由重复的“0”和“1”表示,但此波形并不意味着“K”或“J”对应于“0”或“1” 。在此波形中,“与前一个状态不同 = 0”和“与前一个状态相同 = 1”,并且第一个“KJKJKJ”旁边的“K”...KK“ 是 ”1” 。'.您可以将 0 和 1 分配给下一个“J”作为“0”,将下一个“K”指定为“0”,将下一个“K”指定为“1”,依此类推 。
文章插图
当手动解密数据包时,发现第一个数据包表示设备ID输入命令“IN”,USB键盘设备ID“24”和确认命令 。
推荐阅读
- 九加九打一字的答案是什么?
- 如何查看电脑硬盘是固态的还是机械的
- 茶花的养殖方法和注意事项是什么?
- 跳表在Java中的实现
- 脸部长斑怎样调理
- 脸上有斑喝什么茶去除呢
- 睡眠不好脸上会长斑吗
- 蒸脸可以祛斑吗?
- 如何刮痧去眼袋
- 茯苓怎么祛斑