一 硬件接口图
UART1接口说明:
序号 | 说明 | 备注 |
---|---|---|
1 | VCC | 输出电压3.3V |
2 | TXD | 发送数据TTL电平 |
3 | RXD | 接收数据TTL电平 |
4 | GND | 电源参考地 |
UART2接口说明:
序号 | 说明 | 备注 |
---|---|---|
1 | VCC | 输出电压3.3V |
2 | TXD | 发送数据TTL电平 |
3 | RXD | 接收数据TTL电平 |
4 | GND | 电源参考地 |
UART3接口说明:
序号 | 说明 | 备注 |
---|---|---|
1 | VCC | 输出电压3.3V |
2 | TXD | 发送数据TTL电平 |
3 | RXD | 接收数据TTL电平 |
4 | RTS | 流控:为输出信号,用于指示本设备准备好可接收数据,低电平有效,低电平说明本设备可以接收数据 |
5 | CTS | 流控:为输入信号,用于判断是否可以向对方发送数据,低电平有效,低电平说明本设备可以向对方发送数据。 |
6 | GND | 电源参考地 |
注意:X1 BIOS 自动分配串口资源错误,导致在Windows/LINUX系统中UART不对齐COM端口。我安装的Ubuntu系统串口测试如下:
UART1 -> /dev/ttyS4
UART2 -> /dev/ttyS5
UART3 -> /dev/ttyS0
注意!!! X1 开机上电时会扫描 UART1,UART1 连接会导致 X1 不开机。若要使用 UART1,请在上电开机进入系统后再连接 UART1。
提示:UART 串口和外设接线的时候,RX和TX需要交叉接线,如图:
二 在linux下查看串口
输入以下命令查看有哪些可用串口
sudo dmesg | grep ttyS*
youyeetoo@youyeetoo-X1-SBC:~$ dmesg | grep ttyS*
[ 0.133809] printk: console [tty0] enabled
[ 0.415795] 00:01: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
[ 0.437960] 00:08: ttyS4 at MMIO 0xfe034000 (irq = 21, base_baud = 115200) is a U6_16550A
[ 0.460004] 00:09: ttyS5 at MMIO 0xfe036000 (irq = 34, base_baud = 115200) is a U6_16550A
[ 3.112368] dw-apb-uart.5: ttyS6 at MMIO 0x4010005000 (irq = 20, base_baud = 7500000) is a 16550A
三 安装并使用串口测试工具cutecom
cutecom 是开源工具,有兴趣的,请查看源码页面:https://gitlab.com/cutecom/cutecom
以下是安装应用,进行测试,注意必须是sudo权限或者root用户权限运行
#安装
sudo apt -y install cutecom
#启动 cutecom
sudo cutecom
cutecom介绍如下:
"Open":打开UART
"Device":选择需要打开的UART
"Settings":配置UART参数,比如波特率,数据位等
"Input":是输入需要发送的区域,输入后需要回车才会发出.
点"Settings"进入配置串口界面,按需进行配置.
UART3 回环测试:先把UART3的RX和TX短接,
测试UART3(对应设备名:/dev/ttyS0)
在"Input"输入"1234567890ABCDEF",然后回车,串口通过TX发出,从RX接收,完成回环测试