[单片机芯片] 感觉CH32系列的USB规划得相当混乱

[复制链接]
1841|11
手机看帖
扫描二维码
随时随地手机跟帖
imdx|  楼主 | 2022-1-22 09:05 | 显示全部楼层 |阅读模式
本帖最后由 imdx 于 2022-1-22 09:06 编辑

CH32的USB外设有两种,一种是沁恒私有的IP,文档里叫做USBHD,另外一种是STM32上的那种,叫做USBD。
这个USBD来自于STM32F103,设计的并不好,最大问题是和CAN公用512B SRAM导致无法同时使用,ST自己在14年推出的STM32F072已经改进,缓存增加到1024B,最后面256B可以分配给CAN,USBD和CAN也可以共存。
WCH完全没有必要照搬STM32F103的这个USBD,全部用USBHD这个IP,或者如果要照搬那就照搬STM32F072那个更完善的USBD。
对于带两个USB IP的CH32F103,CH32V203
  • 兼容STM32的USBD,管脚为PA11=DM,PA12=DP
  • 另外一个USBHD是映射到PB6=DM,PB7=DP
WCHISPTool使用的是USBHD这个接口,这就带来一个问题,绝大多数兼容STM32芯片管脚排列的USB接口都在PA11和PA12上,导致很多现成的USB应用无法使用USB来完成固件升级。
其实完全可以和CH32V103一样,只保留一个USBHD,把管脚放到PA11和PA12。本身USBHD这个IP比USBD要更完善,这样做更合理一些。
总结一下就是:
1)USBD这个IP设计并不好,尤其是和CAN互斥问题,不要重复ST在14年就解决了的问题
2)不管是哪个IP,USB接口要从PA11和PA12两个管脚引出,兼容性才好
3)即使要同时内置USBD和USBHD,建议增加一个管脚映射,将USBHD的管脚映射到PA11和PA12,ISP工具始终使用PA11和PA12

使用特权

评论回复
oAgu1a| | 2022-1-22 09:29 | 显示全部楼层
我这也有带USB的MCU,QQ:987736922

使用特权

评论回复
WCHTech2| | 2022-1-23 11:49 | 显示全部楼层
本帖最后由 WCHTech2 于 2022-1-23 11:51 编辑

您好,感谢您提出来的建议,我们会综合考虑的。后续针对我们芯片有其他好的想法和建议也可以继续沟通。我们的usbd在设计时,在考虑用户使用习惯的前提下也做了一些优化。
首先,我们的usbd和can是可以公用的。usb和can同时使用时,访问的共享sram是有硬件仲裁机制的,usb的数据可以从零开始放,而can的过滤器放在了RAM的高字节部分,需要通过软件去管理,只要不公用同样的地址空间就行。
其次我们内置了上下拉电阻,可以通过软件开启。这样在设计时就无需在外接电阻了。

使用特权

评论回复
imdx|  楼主 | 2022-1-23 14:49 | 显示全部楼层
WCHTech2 发表于 2022-1-23 11:49
您好,感谢您提出来的建议,我们会综合考虑的。后续针对我们芯片有其他好的想法和建议也可以继续沟通。我们 ...

注:USBD和CAN控制器在设计中共享了一个专用的512字节 SRAM区域用于数据的发送和接收,因此
同时使用 USBD和CAN 功能时,需要合理分配此共享区域,防止出现数据冲突。
也就是512字节数据USBD和CAN公用?512字节公用少了点,本来地址空间是1024字节的,像STM32F072那样配置成1024字节,后面256字节给CAN来用就比较充裕了。即使两路CAN也能保证USBD有512字节可用。
内置上拉在EXTEN_CTR这个单独的寄存器里,看到了,这个好评。

使用特权

评论回复

评论

WCHTech2 2022-1-24 11:15 回复TA
您好,我们后面设计会考虑的,感谢提供的建议。 我们的USBHD的DMA地址是全RAM空间任意使用的,也内置了上拉电阻,并且使用USB时,电源是支持5V或者3.3V。 
zljiu| | 2022-2-6 19:37 | 显示全部楼层
熟悉了就能好点了

使用特权

评论回复
tfqi| | 2022-2-6 19:50 | 显示全部楼层
估计后续会有好转的

使用特权

评论回复
nawu| | 2022-2-6 20:07 | 显示全部楼层
是不是还没有自成系统啊

使用特权

评论回复
gwsan| | 2022-2-6 20:21 | 显示全部楼层
可能开始就没有一个太好的定位

使用特权

评论回复
aoyi| | 2022-2-6 20:37 | 显示全部楼层
不知道以后会不会有所改善

使用特权

评论回复
天意无罪| | 2022-2-7 16:49 | 显示全部楼层
楼主看来对CH32的USB应用的很熟悉了啊

使用特权

评论回复
kjkujkj21| | 2022-2-9 11:50 | 显示全部楼层
有需要直接找技术支持就可以了。不错的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则