之前为了使用树莓派的GPIO串口功能,搜了各种解决方案,最终在官方文档里面找到了正确的方法。前面一篇简单三步搞定树莓派GPIO串口通讯描述了如何快速配置好GPIO串口,但没有写为什么这么配置,本篇就根据官方串口文档解释一下问什么那样配置。以下正文:
总览
树莓派包含两个内置的串口,一个是PL011,另一个是迷你串口。它们是用不同的硬件来实现的,所以它们之间稍稍有些不同。但他们都是3.3V的设备,所以将他们跟RS232或者其他电平的设备连接时候,要特别小心。必须要使用合适的转接设备。或者可以使用3.3v的usb转串口线,常见又实惠。
默认情况下,树莓派有无线/蓝牙模块(3和zero w),PL011连接到蓝牙模块,迷你串口作为主要的串口用作linux控制。在其他型号中,PL011用作主串口。
默认情况下,/dev/ttyS0 指的是迷你串口,/dev/ttyAMA0指的是PL011。主串口用作linux控制。两个串口还有别名:/dev/serial0,总是指向主串口,/dev/serial1总是指向第二串口。
迷你串口和cpu频率
迷你串口的波特率基于VC4 GPU上的VPU频率。当VPU调整CPU的频率时,迷你串口的波特率也会发生改变。这会限制迷你串口的使用场合。默认情况下,如果mini uart被设置为主串口,为禁用状态。要启用mini ua