Linux下FTDI USB转串口1M波特率出现FTDI_RS_OE溢出错误求助
Linux下FTDI USB转串口1M波特率出现overrun错误的求助
我正在Linux系统中使用原装FTDI USB转串口设备,将波特率设置为1M(而非常规的115200)。整体运行基本正常,但偶尔会出现数据丢失的情况。
排查情况
- 通过
TIOCGICOUNTioctl调用查看计数器,发现存在overrun错误(非buf_overrun) - 研究FTDI Linux驱动代码后确认,该错误由芯片发送携带
FTDI_RS_OE错误标志的USB数据包触发
对比验证
使用完全相同的用户态程序搭配另一款串口设备(imx6 mxc)时,未出现任何同类错误,说明问题确实与FTDI驱动相关。
我对这方面的相关资料了解较少,比较困惑的是同款设备在Windows驱动下运行却没有这个问题。如果有开发者曾在Linux环境下成功让FTDI芯片稳定运行在1M波特率,恳请提供帮助和建议!
内容的提问来源于stack exchange,提问作者Arnout
相关产品推荐
相关产品推荐

