串口通讯
1. 串口引脚
串口引脚对应关系(以M5-R1举例)
串口 | 引脚 | 功能 |
---|---|---|
TXD | 8 | 发送信号线 |
RXD | 10 | 接收信号线 |
对应板卡40PIN上的UART3

2. 检查串口设备
查看串口设备是否生成
#执行命令查看串口设备
ls /dev/ttyS*
如图所示,ttyS3为UART3,ttyS8为UART8(该串口被蓝牙模块占用)

3. 串口通讯测试
以M5-R1为例,通过USB转串口设备连接PC进行串口测试
3.1 连接串口
将USB转串口设备的TX,RX分别于40PIN上的UART6_RX与UART6_TX相连
USB转TTL串口设备如图:

- TXD -- RXD
- RXD -- TXD
- GND -- GND
3.2 查询串口参数修改波特率
使用stty工具查询串口参数
#在板卡的终端执行如下命令
root@rk3588-buildroot:/# stty -F /dev/ttyS6
speed 9600 baud; line = 0;
-brkint -imaxbel
root@rk3588-buildroot:/#
使用stty工具修改串口参数
#设置通讯速率,其中ispeed为输入速率,ospeed为输出速率
root@rk3588-buildroot:/# stty -F /dev/ttyS6 ispeed 115200 ospeed 115200
root@rk3588-buildroot:/# stty -F /dev/ttyS6
speed 115200 baud; line = 0;
-brkint -imaxbel
root@rk3588-buildroot:/#
注意
每一次设备开机需要重新设置一遍波特率,重启默认会重置波特率为9600
3.3 与PC通讯
PC端配置好串口调试助手后,在板卡端使用如下命令测试串口发送数据:
#在板卡上的终端执行如下指令
#使用echo命令向终端设备文件写入字符串"Hello!"、"Linux6_1!"
echo Hello! > /dev/ttyS6
echo "Linux6_1" > /dev/ttyS6
#PC上的串口调试助手会接收到内容
测试接收数据,可以使用microcom工具:
#在板卡上的终端执行如下指令
#使用microcom命令读取终端设备文件,-s参数可以设置波特率
microcom -s 115200 /dev/ttyS6
#microcom命令会等待
#使用串口调试助手发送字符串
#板卡的终端会输出接收到的内容