微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux + minicom + FT232RL USB-to-UART 适配器发送回车CR而不是换行LF

如何解决linux + minicom + FT232RL USB-to-UART 适配器发送回车CR而不是换行LF

你好,这个美好的社区。​​p>

我使用 MX Linux 作为操作系统的计算机。我想访问带有串行/UART 控制台的设备(具体来说,该设备是由 74 系列 IC 制成的最小计算机。请参阅 https://github.com/slu4coder/Minimal-UART-CPU-FLASH-Edition)。为了从计算机连接到设备,我在硬件上使用了带有(正版)FTDI FT232RL 芯片的 USB 到 UART 转换器。软件方面,我使用 minicom。

它通常有效,但我遇到了一个非常具体的问题:

该设备需要一个换行符 (LF) 作为换行信号(它在其 PCB 丝印上是这样说的)。我无法让 linux+minicom 在 RETURN 或 ENTER 时发送 LF。它将发送一个回车(CR)。

如果我通过 USB 到 UART 转换器从我的计算机连接到设备并在我的计算机上启动 minicom,它将向我显示设备串行控制台 - 到目前为止,一切都很好。

但是如果我在 minicom 中输入设备命令并按 RETURN 或 ENTER,设备将不会处理它们。

但是,如果我在我的命令之后使用 CTRL+J 而不是 RETURN 或 ENTER,它会给出一个 LF,它工作正常。同样,如果我不使用我的标准输入/键盘 + minicom,它也可以工作,而是像这样从 bash 发送命令:

echo foo > /dev/ttyUSB0

我试图用

修改我的计算机/Linux行为
sudo stty -F /dev/ttyUSB0 icrnl

但无济于事。

我相信这在原则上是正确的命令,但我也尝试了其他命令只是为了 100% 确定,例如:

sudo stty icrnl
sudo stty ocrnl
sudo stty cooked
sudo stty raw
sudo stty sane

但他们也没有帮助。

我还尝试使用 minicom 设置菜单中的“添加换行符”(A) 选项让 minicom 本身在 RETURN 或 ENTER 时发送 LF 而不是 CR。这也没有帮助。

您对如何解决此问题有任何建议吗?这实际上并不是一个关键问题,因为我总是可以使用 CTRL+J 而不是 RETURN 或 ENTER,但是随着时间的推移,这会变得有点不方便。

谢谢!

(如果我对问题的描述不是很好,很抱歉 - 业余爱好者和第一次在这里发帖。如果您需要更多信息或图片,请告诉我。)

解决方法

根据其手册,minicom 有一个 CONFIGURATION 设置菜单,包括屏幕和键盘O - 字符转换C - 编辑字符 where 你被问到你想要转换的字符值(十进制) 改变你会被问到 想要在您从键盘输入该字符时发送出去。 如果您指定要发送的值 13 (CR) 10 (NL),它应该确实需要您想要的。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。