WCH沁恒单片机
直播中

云中云

8年用户 957经验值
私信 关注
[问答]

CH582m usb描述符已经成功获取,怎么添加修改例程去枚举?

工程师您好,usb描述符已经成功获取,不太明白怎么添加修改例程去枚举,请问有没有详细一点的例程或者库函数说明,谢谢
  

回帖(2)

刘珊宏

2022-9-19 11:51:03
你好,看你的描述像是咨询USB主机的使用,比较详细的枚举流程其实559或者554的主机例子都比较详细,寄存器跟582页类似,可以参考。
还有就是电脑端可以装bushound这种USB协议分析软件,抓取PC对设备的枚举流程,然后MCU这边仿照PC的操作发送指令就可以。
指令发送跟获取设备描述符操作都是类似的。
举报

卢家辉

2022-9-19 11:51:14
可以使用。USB2HostTransact函数名中的2是指使用芯片的USB2相关引脚。
主机向设备OUT数据主要是如下步骤,①设置发送数据的长度,②向DMA中存储数据,③设置同步切换标志,然后调用HostTransact函数。参考代码块如下。

R8_UH_TX_LEN = RemLen >= 32 ? 32 : RemLen;      //写主机发送长度寄存器
for (i = 0; i < R8_UH_TX_LEN; i++)
{
pHOST_TX_RAM_Addr = *pTBuff;
pTBuff++;
}
R8_UH_TX_CTRL ^= RB_UH_T_TOG;   //同步切换
s = USBHostTransact(USB_PID_OUT << 4 | 0x02, R8_UH_TX_CTRL, 30);  // OUT数据|端点2,重传次数
举报

更多回帖

×
20
完善资料,
赚取积分