21ic问答首页 - USB虚拟串口数据缓存问题
USB虚拟串口数据缓存问题
honests2021-10-11
大佬们,请问一下
USB虚拟串口在PC端软件未打开的时候发送了数据,导致PC机串口软件打开接收数据的时候,会将之前的数据一起接收,这该怎么解决。设备接到ubuntu,使用cat /dev/ttyACM0 能看到发送的数据;
有什么办法能够使USB设备检测PC端软件是否打开的方法吗。
用抓包软件发现串口软件打开,关闭的时候,有USB控制信号,但不知道怎么用。
求助
USB虚拟串口在PC端软件未打开的时候发送了数据,导致PC机串口软件打开接收数据的时候,会将之前的数据一起接收,这该怎么解决。设备接到ubuntu,使用cat /dev/ttyACM0 能看到发送的数据;
有什么办法能够使USB设备检测PC端软件是否打开的方法吗。
用抓包软件发现串口软件打开,关闭的时候,有USB控制信号,但不知道怎么用。
求助
赞0
软件打开串口的时候,会发一系列的配置字,比如 SET_LINE_CODING 等,不是软件发送的,是虚拟串口驱动发送的,
参考这个** https://bbs.21ic.com/icview-1652460-2-1.html 中的源码
里面有一个 VCom_ReConfig 变量,在 main.c 和 usb_prop.c 文件中, 收到 SET_LINE_CODING 配置的时候 这个变量会自增变化,检测到这个变化就知道串口被打开了。
https://bbs.21ic.com/icview-2582462-2-1.html
https://bbs.21ic.com/icview-1652460-1-1.html
评论
2021-10-12
赞0
评论
2021-10-11
您需要登录后才可以回复 登录 | 注册