樹莓派3 串口使用 raspberry pi 3B+ uart boot overlay(最全樹莓派串口使用)

今天要說說樹莓派3的UART串口的使用問題,該串口問題的官方反饋及回覆請參考這兩篇官方博文http://www.briandorey.com/post/Raspberry-Pi-3-UART-Boot-Overlay-Part-Two
對於樹莓派3 B+ 來說,他的uart 功能有三種: 1、內部藍牙使用 2、控制終端使用 3、與其他設備進行串口通信;

然而 樹莓派 3 確只提供一個硬件 uart,對應硬件接口 p14-TX/P15-RX。所有樹莓派3 的串口只能是魚與熊掌不能兼得了。

樹莓派 官方系統 Raspbian Jessie releases 默認串口是給藍牙使用。如果想讓串口作爲控制終端調試口即 serial console ,則需要對系統配置進行修改,關閉藍牙並且映射 pl011 UART 到p14和p15

一、使能serial console步驟如下:

  • srep1:安裝系統並配置系統
    Raspbian Jessie releases 系統安裝到sd卡上(其他系統沒有測試),相信看到該博文的你這一步肯定已經完成了。 配置系統: sudo raspi-config

    執行:Expand filesystem and enable serial on advanced page exit and reboot

   sudo apt-get update 
   sudo apt-get upgrade
   sudo reboot
  • step2: 修改配置

    編輯 /lib/systemd/system/hciuart.server 然後用 ttyS0 替換文件中的 ttyAMA0

  sudo  vi / /lib/systemd/system/hciuart.server
  替換文件中的 ttyAMA0  爲 ttyS0
  • step3:設置 Device tree
  sudo vi /boot/config.txt
在文件末尾添加 : dtoverlay=pi3-miniuart-bt

保存->退出
  • step4:使能串口終端 serial console

    編輯 /boot/cmdline.txt 文件
    sudo vi /boot/cmdline.txt
    變文件內容爲:

dwc_otg.lpm_enable=0 console=serial1,115200  console=tty1 root=/dev/mmcblk0p2  kgdboc=serial1,115200 rootfstype=ext4  elevator=deadline fsck.repair=yes   rootwait

保存上述文件並重啓系統

sudo reboot

這個時候,你就可以用串口登錄樹莓派並控制輸入輸出了;pc端串口配置爲: 115200 8n1(8位,沒有校驗位,1位停止位)

二、設置串口爲通用串口與外部設備通信

如果你想把串口設置爲通用串口,那就要關閉 serial console了。具體步驟如下:
在完成上面前3個step前提下,編輯 /boot/cmdline.txt 文件

sudo /boot/cmdline.txt 

修改文件中的內容爲:

dwc_otg.lpm_enable=0  console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4  elevator=deadline fsck.repair=yes   rootwait

退出並保存文件。

sudo reboot

這個時候我們的串口就可以使用了,串口的設備號爲 /dev/ttyAMA0

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章