engolll 2014-11-20 10:56 采纳率: 0%
浏览 2026

USB协议疑问,USB包五部分与设备请求命令区分

USB包组成五部分:
同步字段(SYNC)、包标识符字段(PID)、数据字段、循环冗余校验字段(CRC)和包结尾字段(EOP)

设备请求命令
bmRequestType(1)+bRequest(1)+wvalue(2)+wIndex(2)+wLength(2)

我要问的是,设备请求命令 不属于 包 吗?

如果属于 包 那么 数据跟这些对不上的:同步字段(SYNC)、包标识符字段(PID)、数据字段、循环冗余校验字段(CRC)和包结尾字段(EOP)

  • 写回答

1条回答 默认 最新

  • luckywang1103 2015-04-15 08:07
    关注

    如果你是上层软件开发的话,SYNC, PID, CRC等字段不需要你管,一般由硬件自己完成的。
    要做的是当来ep0的setup中断后,从rx FIFO中读取数据,这个数据就是bmRequest + bRequest + wValue + wIndex + wLength,然后你对这些数据做解析,
    如果后面有数据要发送给usb主机,则将数据写到tx FIFO中等待发送。

    评论

报告相同问题?

悬赏问题

  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题