Linux系统可以使用系统自带的shell命令便捷的配置串口、获取串口配置、读写串口。此方式适用于USB转串口、PCI/PCIe转串口设备等。

1、stty 命令介绍

image.png

stty命令可以用来设置/获取当前终端的配置,此处仅针对UART串口的设置做介绍。


设置串口

stty -F /dev/ttyCH343USB0 speed 115200 cs8 -parenb -cstopb raw -echo -echoe -echok -echoctl -echoke

说明:
speed 串口波特率
cs8 数据位8位
parenb 无校验
cstopb 停止位1位

其余命令是针对串口设备的设置,可直接照搬。详细介绍可以 man stty 查看。

 

查看串口设置

stty -a -F /dev/ttyCH343USB0


2、cat 命令读取串口数据

cat /dev/ttyCH343USB0

注:该命令后以阻塞方式执行,接收到串口数据会自动打印。如果是串口Loopback回环测试,则需要再开启一个 terminal 终端窗口运行写串口。


3、echo 命令发送串口数据

1、从目标串口发送字符串 “abcdefg”echo "abcdefg" > /dev/ttyCH343USB0


2、循环发送串口数据while true; do echo "abcdefg" > /dev/ttyCH343USB0; done;


4、实例演示

以USB转双串口芯片CH342F为例,测试前2个串口交叉连接:TXD0<--->RXD1,TXD1<--->RXD0,下图展示UART1发送给UART0。

image.png