WCH沁恒单片机
直播中

凤毛麟角

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

CH582M无法识别的USB设备怎么解决?

项目要用到CH582M的USB2作为device,看到官方的例程库里只有USB的例程,把USB的VendorDefinedDev工程下main.c的USB寄存器、缓存、初始化代码全部改成USB2,下载到板子上,连上电脑,电脑显示【无法识别的USB设备】。

改动的地方有:
  • 初始化
    pU2EP0_RAM_Addr = U2EP0_Databuf;
    pU2EP1_RAM_Addr = U2EP1_Databuf;
    pU2EP2_RAM_Addr = U2EP2_Databuf;
    pU2EP3_RAM_Addr = U2EP3_Databuf;
    USB2_DeviceInit();
    PFIC_EnableIRQ(USB2_IRQn);

  2.  USB_DevTransProcess()函数中所有USB的寄存器都改成USB2
  3.  中断处理函数改为:void USB2_IRQHandler(void)

其他地方都没做过改动,请问还有哪些需要新添加的地方,或者官方有没有测试通过的例程。

回帖(2)

华农武

2022-8-1 10:24:07
官网下载最新EVT包,其中有CompoundU2Dev工程使用了USB2,可供参考。
举报

周颂焱

2022-8-1 10:24:13
令牌包指令存放的地址指针也要更改为pU2SetupReqPak。
以下是我改的一份代码,可以识别。


VendorDefinedU2Dev.zip
举报

更多回帖

发帖
×
20
完善资料,
赚取积分