USB HID端点1发送的问题

2019-07-20 20:04发布

最近在写USB HID的触摸屏驱动,其实也就是把鼠标的相对坐标值改成绝对坐标值,需要在端点1发送5个字节的数据。

但是问题来了,我用BUS HOUND始终只能监听到4个数据,最后一个字节始终收不到,请问大家是什么原因。

例如,发送使用这个函数
void TouchPanel_Send(void)
{
  u8 Mouse_Buffer[5] = {0, 0, 0, 0, 0};
    
  /* prepare buffer to send */
  Mouse_Buffer[0]=0x11;
  Mouse_Buffer[1]=0x22;
  Mouse_Buffer[2]=0x33;
  Mouse_Buffer[3]=0x44;
  Mouse_Buffer[4]=0x55;
  /*copy mouse position info in ENDP1 Tx Packet Memory Area*/
  UserToPMABufferCopy(Mouse_Buffer, GetEPTxAddr(ENDP1), 5);
  /* enable endpoint for transmission */
  SetEPTxValid(ENDP1);
}

在BUS HOUND上只能收到 0X11 0X22 0X33 0X44
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
Danielyuan
1楼-- · 2019-07-20 20:21
 精彩回答 2  元偷偷看……
正点原子
2楼-- · 2019-07-20 23:14
标准USB鼠标协议规定的数据传输就是4个字节吧.
kingchunhai
3楼-- · 2019-07-21 01:20
回复【3楼】Danielyuan:
---------------------------------
我使用原子哥的战舰版调试程序,也遇到同样的问题了,但是我按照你说的方法改了也没用啊?谢谢
正点原子
4楼-- · 2019-07-21 03:46
 精彩回答 2  元偷偷看……
yuzeyuan1
5楼-- · 2019-07-21 07:27
有用,刚好用到。
1173844395
6楼-- · 2019-07-21 09:27
你好,我现在的问题是:发送一个键码给PC机,不停的打印.

一周热门 更多>