从串口读取数据

从串口读取数据

仅供参考,我正在运行 busybox。我可以使用以下命令将数据发送到我的 ttyS1:

stty -F /dev/ttyS1 speed 115200 cs8 -cstopb -parenb -echo
echo -en 'data here' > /dev/ttyS1

但当我尝试阅读时,我会这样做:

stty -F /dev/ttyS1 speed 115200 cs8 -cstopb -parenb -echo
cat /dev/ttyS1

但程序结束时没有任何消息。我也试过了cat < /dev/ttyS1也不行。

我确信数据正在发送到此端口,因为我有 LED 指示灯来指示数据即将到来。连接设置设置为与 115200 波特率、8 位、偶校验、1stopbit 相同。

答案1

于是在另一个论坛找到了答案。我将它放在这里,基本上只是添加超时计时和 while 循环来不断读取端口。

stty -F /dev/ttyS1 speed 115200 cs8 -cstopb -parenb -echo time 3 min 0
while [ true ]; do
   cat /dev/ttyS1
done

就这样。

相关内容