树莓派五多串口通信

       相比树莓派零、1、2 以及 3 的双串口 UART0(PL011)和 UART1(mini UART),树莓派4 中新增了 4 个 PL011 串口共计有 6 个 UART。树莓派五也专门增加了UART接口。目前搜到的大多数描述树莓派串口的文章,大多数开头都是禁用下蓝牙,这个做法针对树莓派0-3 是必须的,因为本身串口不够用。但对于四和五来说,并不需要。

树莓派五UART配置

1.展示所有串口的命令 

        dtoverlay -a | grep uart

        展示pi5中的所有串口

        

2.查看特定串口信息

        dtoverlay -h uart2

        查看 UART2 的配置信息

        

        相关信息会展现 GPIOs 与新的 UART 串口的分配:0-3 对应 UART2, 4-7 对应 UART3,

        8-11 对应 UART 4

3.配置开启串口UART2

        执行编辑config.txt命令:

        sudo vim /boot/firmware/config.txt 

        在文件尾添加以下内容:

        dtoverlay=uart2

        退出vim,重启看是否生效:

        ls /dev/ttyAMA*

        结果如下:

        

        各 UART 串口与 GPIO 对应关系:


        GPIO4  = TXD3 -> ttyAMA2
        GPIO8  = TXD4 -> ttyAMA3
        GPIO12 = TXD5 -> ttyAMA4

        GPIO5  = RXD3 -> ttyAMA2
        GPIO9  = RXD4 -> ttyAMA3
        GPIO13 = RXD5 -> ttyAMA4

4.python进行测试

        当使用python时,我们采用BCM形式

        

        我们需要设置BCM下的gpio4和gpio5(pin7和pin29)

        

        代码如下:

        
————————————————

参考:

官方 UART 配置文档:
https://www.raspberrypi.org/documentation/configuration/uart.md
论坛关于多串口的命令与指引:
https://www.raspberrypi.org/forums/viewtopic.php?t=244827#p1493698
 

                  

### 树莓派5 UART串口配置及使用 #### 展示所有可用串口 为了查看当前系统中所有的UART端口,在终端输入如下命令可以获取到所需的信息[^2]: ```bash dtoverlay -a | grep uart ``` 该命令会列出所有已加载的UART设备及其状态。 #### 配置并启用特定UART接口 对于树莓派5来说,支持多达个独立的UART通道(uart0至uart5)。要激活某个具体的UART接口,可以通过编辑`/boot/config.txt`文件来完成。例如,如果想要启动uart4,则可以在上述文件里加入下面这行代码: ```bash enable_uart=1 dtoverlay=pi3-miniuart-bt # 如果需要禁用蓝牙占用ttyS0的话加上这一句 dtparam=uart4=on # 开启uart4 ``` 重启之后新的设置就会生效。注意这里假设读者已经熟悉基本Linux操作环境下的文本编辑技巧。 #### 设置GPIO引脚映射关系 不同版本之间GPIO分配可能存在差异;具体到树莓派4B及以上型号,其UART编号与对应的物理针脚位置如下表所示[^3]: | UART名称 | 发送(TX) | 接收(RX) | |--------------|------------|-------------| | UART0 | GPIO14 (TXD0)| GPIO15 (RXD0)| | UART1(ttyS0) | 内部连接(Bluetooth)|内部连接(Bluetooth)| | UART2 | GPIO0 (TXD2)| GPIO1 (RXD2) | | UART3 | GPIO4 (TXD3)| GPIO5 (RXD3) | | UART4 | GPIO8 (TXD4)| GPIO9 (RXD4) | | UART5 | GPIO12 (TXD5)| GPIO13 (RXD5)| 当涉及到实际硬件连线时,请参照官方文档确认最新的引脚定义以免造成不必要的损坏。 #### 软件层面初始化过程 首次使用前还需要通过Raspberry Pi Configuration Tool调整一些参数以确保正常工作[^4]: 进入`sudo raspi-config`,选择 `Interfacing Options -> Serial`: - 对于是否允许登录shell访问串行端口这个问题应答否(`No`); - 当询问是否保留硬件串行端口的支持时应回答是(`Yes`)。 这样做的目的是防止TTY服务抢占资源从而影响外部设备的数据交换效率。 完成以上几步后保存更改退出工具,并重新引导系统使新设定起作用即可开始测试通信链路质量了。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值