久芯网

USB 虚拟串口,端点不能访问

avatar David181 提问时间: 2023-08-22 13:16:21 / 未解决
本人用的是STM32F105来做的串口虚拟设备,准备虚拟4个串口。代码使用STM32CUBE生成的虚拟单串口基础上修改来的。目前已经能枚举4个串口。但是只能打开串口1.在打开其他串口的时候发现有问题。打开其他串口对应的端点时没有回应,入下图:串口2是由端点3和端点4构成,端点3正常相应,端点4异常。串口3个串口4的所有端点都异常。端点3正常

端点4异常






猜测的可能:1、端点4没有被打开(但是在程序中,对所有的端点都进行了相同的操作)?
2、程序中有对端点4以后的限制,还没有被发现。

3个回答
  • avatar David181
    回答时间: 2023-08-22 13:43:27

  • avatar David181
    回答时间: 2023-08-22 14:04:19

    前面图片上传的有问题,

  • avatar butterflyspring
    回答时间: 2023-08-22 14:33:59

    1. STM32F105的USB 为USB_OTG_FS, 除了端点0外就3个双向端点, 所以理论上最多只可以虚拟3个串口. 2. 在USBD_LL_Init()函数内注意将使用到的端点分配FIFO。 3.在class init内打开对应端点. 堆栈大小最好设置大一些,例如0x1000.

会员中心 微信客服
客服
回到顶部