完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
USB CDC host怎么与多串口的从机通信?
有一个从设备的USB虚拟了3个串口,作为主设备,如何分别识别出每个串口,分别于每个串口通信? 我的主设备使用的是官方单独的USB标准库(非CUBEMX),大神帮忙理一理,谢谢! 是在哪个过程(函数)实现识别多个虚拟串口的? |
|
相关推荐
1个回答
|
|
要使用USB CDC host与多串口从机通信,您可以按照以下步骤进行操作:
1. 打开USB主机端口并进行初始化。 2. 搜索并枚举连接到USB主机端口的所有设备。 3. 根据设备描述符或其他标识符识别从设备,以确定它是哪个虚拟串口。 4. 打开与所需虚拟串口对应的接口/端点。 5. 通过所选的端点与虚拟串口进行通信。 在官方的USB CDC host库中,您可以使用官方提供的API函数来执行上述操作。例如,您可以使用以下函数来搜索和枚举设备: 1. `USBD_Init():`用于初始化USB主机端口。 2. `USBD_RegisterClass():`用于注册相关的USB设备类。 3. `USBD_Start():`用于启动USB主机端口。 然后,您可以使用以下函数来打开、读取和写入虚拟串口数据: 1. `USBD_OpenEndpoint():`用于打开与所需虚拟串口对应的接口/端点。 2. `USBD_Read():`用于从虚拟串口读取数据。 3. `USBD_Write():`用于向虚拟串口写入数据。 这里只是提供了一些基本的功能和函数,具体的实现可能依赖于您所使用的USB库和相关的操作系统。 此外,您还需要参考从设备的文档以了解该设备在USB CDC协议中的描述符和通信接口/端点配置。这可以帮助您正确识别和与每个虚拟串口通信。 希望这能帮到您! |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1621 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1546 浏览 1 评论
980 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
686 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1599 浏览 2 评论
1867浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
650浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
518浏览 3评论
534浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
506浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-23 20:58 , Processed in 0.754063 second(s), Total 81, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号