大家好,
我使用带USb的MCU做HID的程序。现在板子能够被识别成HID设备,我把板子模拟成键盘。按一个键就相当于真正PC键盘上的某个键按下了。
这里我有几点不明白:
1)我在板子上按一下键,发送的是8个bytes,但是bushound抓到的是12个字节,这里多出来的是什么?
2)发送上来的数据和抓到的数据完全对不上。我实际发送的数据是
{ 0x02, 0x00, 0x16, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 'S' */
{ 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 'i' */
{ 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 'l' */
{ 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 'i' */
上面就是PC键盘S,i,l键按照HIDUsage_table文档中keyboard的定义来组织的。但是抓到的数据如图所示。
3)cmd phrase ofs (rep)表示什么?我抓到的数据显示成1.1.0,1.1.8,2.1.0,2.1.8,3.1.0,3.1.8.。。。。。。。
|