c - 有没有办法以编程方式控制 Linux 中的 uart rx fifo 大小



我正在编写软件来与设计不良的硬件进行通信。该硬件可以通过RS485线(9600 8N1)与linux pc(内核4.15)通信,并且时间非常短:PC应在收到设备请求后2ms内回复。

我能够使用LOW_LATENCY标志和/sys/class/tty/ttySx/rx_trig_bytes 文件来解决此任务。

打开端口"rx_trig_bytes"后,文件内容更改为"14",因此我需要在打开端口后向其写入"1"以获得良好的回复延迟。

有没有办法通过API调用或在系统启动/驱动程序加载后修复它?目前的实现看起来很丑陋:(

有趣的是,你觉得这种方式很丑陋,考虑到一切都是Unix中的文件,这应该是聪明的方式。

我想你有权拥有自己的审美意识。

如果要将另一个缓冲区大小设置为默认值,则始终可以在驱动程序中更改它,并按照此处的建议重新编译内核。

相关内容

  • 没有找到相关文章

最新更新