树莓派(十一)树莓派4B ubuntu20.04 UART 多串口配置通信

        通过查看官方文档:树莓派0、1、2 以及 3 的双串口 UART0(PL011)和 UART1(mini UART)为主,而且网络上大多数关于树莓派3之前版本串口打开方式,操作比较复杂。树莓派 4 中增了 4 个 PL011 串口共计有 6 个 UART,不再使用以前的方法进行更改。

一、 raspberry 4B 在ubuntu20.04 配置串口的方法

通过命令查看支持的串口数: 

dtoverlay -a | grep uart

树莓派(十一)树莓派4B ubuntu20.04 UART 多串口配置通信_第1张图片

 官方文档:Raspberry Pi Documentation - Configuration

树莓派(十一)树莓派4B ubuntu20.04 UART 多串口配置通信_第2张图片

 树莓派(十一)树莓派4B ubuntu20.04 UART 多串口配置通信_第3张图片

 树莓派(十一)树莓派4B ubuntu20.04 UART 多串口配置通信_第4张图片

 配置串口:

sudo vim /boot/firmware/usercfg.txt

添加如下,保存,重启即可。

dtoverlay=uart2
dtoverlay=uart3
dtoverlay=uart4
dtoverlay=uart5

查看方式:

ls /dev/ttyAMA*

二、树莓派4B串口GPIO对应关系

树莓派(十一)树莓派4B ubuntu20.04 UART 多串口配置通信_第5张图片


UART0: GPIO14 = TXD0 -> ttyAMA0     GPIO15 = RXD0 -> ttyAMA0
UART1: ttyS0
UART2: GPIO0  = TXD2 -> ttyAMA1     GPIO1  = RXD2 -> ttyAMA1
UART3: GPIO4  = TXD3 -> ttyAMA2     GPIO5  = RXD3 -> ttyAMA2
UART4: GPIO8  = TXD4 -> ttyAMA3     GPIO9  = RXD4 -> ttyAMA3
UART5: GPIO12 = TXD5 -> ttyAMA4     GPIO13 = RXD5 -> ttyAMA4
 

三 、测试

3.1 使用python的pyserial模块即可进行测试

import serial
uart2 = serial.Serial(port="/dev/ttyAMA1", baudrate=9600)
uart2.write("Msg from UART2...".encode("gbk"))
uart2.read(10)

3.2 有界面的可以使用cutecom串口工具进行测试

树莓派(十一)树莓派4B ubuntu20.04 UART 多串口配置通信_第6张图片

 3.3没有界面的可以采用minicom进行测试

 enjoy!

你可能感兴趣的:(Ubuntu,系统,raspberry,树莓派,matplotlib,自动驾驶,人工智能)