樹莓派4b 串口配置


日前需要使用樹莓派多個串口,在網上查詢資料得知,樹莓派4b除了UART0(PL011)和UART1(mini UART)還新增了四個PL011串口,為預防忘記相關知識和易於尋找,特此去整理一下樹莓派4b的串口配置筆記。

串口查看命令:
展示所有串口 --> dtoverlay -a | grep uart
查看特定串口信息 --> dtoverlay -h uart0

串口開啟步驟
編輯config.txt:--> sudo vim /boot/config.txt
文件末尾添加:--> dtoverlay=uartX(X表示串口號,比如uart2)
重啟樹莓派:--> sudo reboot
查看是否生效:--> ls /dev/ttyAMA*(樹莓派系統原先便開啟了UART0和UART1,故ttyAMA0早已存在,新增串口后應該會顯示ttyAMA1,這個數字編號和config文件中串口開啟順序有關)

樹莓派4b各UART引腳如下:
UART0:
TXD0-->GPIO14
RXD0-->GPIO15
UART2:
TXD2-->GPIO0
RXD2-->GPIO1
UART3:
TXD3-->GPIO4
RXD3-->GPIO5
UART4:
TXD4-->GPIO8
RXD4-->GPIO9
UART5:
TXD5-->GPIO12
RXD5-->GPIO13

串口的使用(python3 UART的TX接RX):
導入serial模塊:--> import serial
串口配置:--> ser = serial.Serial(port="/dev/ttyAMA1", baudrate=9600)
清空串口接收緩沖區:--> ser.flushInput()
獲取字符串的UTF-8編碼格式並從串口以bytes形式發送:--> ser.write("hello world".encode("UTF-8"))
獲取接收緩沖區字符:--> recv = ser.inWaiting()
顯示接收緩沖區字符數量:--> print(recv)
讀取接收緩沖區全部數據:--> ser.read(recv)
讀取接收緩沖區數據,以\n結束:--> ser.readline(recv)


參考:
https://blog.csdn.net/weixin_40796925/article/details/107907991

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM