修改cinfig.txt
檔案
sudo vim /boot/config.txt
確保enable uart = 1
串列埠使用ttys0 :dtoverlay=pi4-miniuart-bt
失能串列埠dtoverlay=pi3-disable-bt
檢視串列埠對映關係
ls -l /dev
可以看到串列埠serial0
的裝置名稱已換
如果沒有變,可嘗試重啟sudo reboot
之後重新檢視
說明:為什麼要將serial->ttyama0?
ttys0稱之為mini串列埠,效能低,功能簡單,沒有專門的時鐘源而是cpu核心時鐘提供,缺點是,波特率易於受到核心時鐘的影響。ttyama0是樹莓派硬體串列埠,有單獨的波特率時鐘、效能高可靠性高。
設定串列埠通訊引數
開啟/boot/cmdline.txt
sudo nano /boot/cmdline.txt
刪除console=serial0,115200
如已經更改則不需要修改
修改之後應該如下:
dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
儲存,重啟sudo reboot
我自己實操的時候,發現如果上面幾部做過之後重啟,這裡是不需要修改的,不過保險起見,這裡可以檢視一下
串列埠除錯
安裝minicom
sudo apt-get install minicom
啟動minicom
sudo minicom -d /dev/ttyama0 -b115200
將rx 和tx進行短接
同時按下ctrl+a 之後按z 然後按e 開啟回顯功能
進入之後,在鍵盤上按任意字元,發現按下乙個字元同時返回乙個,說明串列埠設定成功
樹莓派和pc通訊
使用串列埠轉usb進行和pc的串列埠除錯助手進行同信
pc給樹莓派傳送的字元hello raspberry
樹莓派在minicom
能夠接收到相應的資料
樹莓派給pc傳送資料同時pc在串列埠除錯助手中能夠接收到hellopc
測試成功!
樹莓派的串列埠配置
在樹莓派3b的外設裡面一共包含兩個串列埠,乙個稱之為硬體串列埠 dev ttyama0 乙個稱之為mini串列埠 dev ttys0 硬體串列埠由硬體實現,有單獨的波特率時鐘源,效能高 可靠,mini串列埠效能低,功能也簡單,並且沒有波特率專用的時鐘源而是由cpu核心時鐘提供,因此mini串列埠有個...
樹莓派串列埠通訊編碼 樹莓派UDP通訊及串列埠通訊
bin env python import serial import string import time import threading import socket host port 10001 s socket.socket socket.af inet,socket.sock dgram...
樹莓派串列埠
串列埠使用例程及說明 pyserial api sudo apt get install python serial python m serial.tools.list ports 此命令可以檢視裝置的檔案節點。class serial.serial init port none,baudrate...