USB转UART芯片能实现流控吗?
发布于 7 个月前 作者 cleverguy 283 次浏览 来自 分享

如题,使用usb-uart芯片,流控功能是怎么实现的?

1 回复

这个问题涉及的方面比较多,答案比较复杂。 首先USB芯片是可以实现流控的,但是要依赖于芯片内部CDC固件,以及主机系统usb驱动的实现。理论上,CDC固件内部有收发缓冲区,当缓冲区满时,CDC固件会向主机发送NAK包。主机系统驱动检测到NAK包时,就会暂停发送。 目前主流的操作系统,windows/Linux/MacOS,usb驱动都是支持NAK流控的。但是usb芯片内部的CDC固件实现,各个厂商实现的水平就参差不齐了。是否能实现流控要咨询芯片厂商。 另外在飞控端,对于usb连接,PX4系统是不支持流控的。因此即便对端的PC系统有流控功能也没有实际用途。

回到顶部