天天看點

樹莓派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= console=serial1,  console=tty1 root=/dev/mmcblk0p2  kgdboc=serial1, 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=  console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4  elevator=deadline fsck.repair=yes   rootwait
           

退出并儲存檔案。

sudo reboot
           

這個時候我們的序列槽就可以使用了,序列槽的裝置号為

/dev/ttyAMA0

繼續閱讀