最全USB HID开发资料,悉心整理一个月,亲自测试
刘氓兔的杂谈【001】-片上USB 高速PHY
【经验分享】在进行 USB CDC 类开发时,无法发送 64整数倍的数据
【源码】STLINK-V3MINI 高速USB仿真器,成功改刷【高速CMSIS-DAP】
在线直播|无需编写任何代码即可在STM32上实现USB-C Power Delivery
圈圈发布USB图书第二版有感,以及分享一些我学习USB过程...
USB Audio设计与实现
【MCU实战经验】+STM32F107的USB使用
STM32F4-DISC 实现USB主机(U盘)和USB设备(虚拟串口)自动切换
STM32 USB-HID通信移植步骤STM32 USB HID键盘例程
这个要看下具体型号的USB端点有多少?
407有多少个端点?USB端点和VCP是什么样的对应关系呢?
版主你好,以这里看,貌似做从机的时候是8对,也就是16个EP,那请问是不是只能做5个VCP呢?
STM32H7xx
你好,版主,如图所示,做从机的时候有8对EP是吧?然后可以虚拟出5个VCP,是这样吗?3个EP虚拟出一个VCP?
4 f7 Z9 H( F, p+ i N# G
帖子里面的测试gif 和截图是在win7 上进行的,这个时候需要加载一个inf 驱动。8 {9 \/ a6 _3 T) j
在win10上是可以自己加载驱动,如果你能正常枚举2个串口那就问题不大了,通信部分你可以再确认下代码。
至少可以先调通一个VCP收发没有任何问题再移植多VCP。
楼主你好,有没有linux下CDC驱动,比如接入树莓派这样的板子就很方便了,接口控制与逻辑由MCU来完成,高级功能“界面、网络”由树莓派完成。1 P5 ~) V) V) ~, l. p' u7 w
一直有这个想法,ST官方也不提供驱动源码,要是有USB2的HS驱动源码,有的话MCU拿来传大数据流也是不错的。
其实这个我也不懂,问了几个大佬后他们说linux里面集成的有CDC驱动了,不需要另外的驱动文件。
现在用CUBEMX生成单VCP发送没有问题。我看网上说VID和PID也很重要,我在您例程里看用的是0x03EB/0x6133,不知道这个有什么考虑吗?STM默认用的是0x0483/0x5740.另外win10安装没有数字签名驱动的方法您那有吗?我这边安装总是不成功
1、 要保证STM32程序里面的用PID VID和驱动文件INF的PID VID保持一致,这里使用和官方的PID VID不一样是为了加载自己写的那个驱动,这样可以修改枚举出来的串口名称。% b' x7 V T# T; e2 o6 R$ \+ P1 [0 }
2、没有数字证书的问题我也搞不定,这个目前没有办法,WIN7 32位可以强制安装驱动,但是64位或者win10好像只能禁用签名验证才能安装驱动。win10也可以使用系统自动加载的兼容驱动好像也能正常通信。
好的,谢谢,回头试试。
https://www.stmcu.org.cn/module/ ... amp;fromuid=3350409
(出处: 意法半导体STM32/STM8技术社区)" O( b7 I; ?8 N# W* v
想请教一下你的缓冲区大小设置是怎么考虑的?
endpoint_control_address = (UX_DCD_OTG_FS_DIEPCTL0 + (ed -> ux_dcd_otg_ed_index * UX_DCD_OTG_ENDPOINT_SPACE_SIZE));' v( q) t/ j a
endpoint_size_address = (UX_DCD_OTG_FS_DIEPTSIZ0 + (ed -> ux_dcd_otg_ed_index * UX_DCD_OTG_ENDPOINT_SPACE_SIZE));, I Z, p" s+ C5 ?
endpoint_dma_address = (UX_DCD_OTG_FS_DIEPDMA0 + (ed -> ux_dcd_otg_ed_index * UX_DCD_OTG_ENDPOINT_SPACE_SIZE));6 H3 G8 ?, R) F: _. Y: Q0 ~/ [& K' v
就像这样,在一个函数里就设置了端点0和非0端点的所有端点的IN设置,可根据ed -> ux_dcd_otg_ed_index来判断是哪一个端点,所以,相对来说,如果我添加了端点,就是不是不需要再添加我加的端点的初始化函数呢