一、開啓串口部分:轉載自 http://www.cnblogs.com/wuxuan/p/7764495.html
通過 cat /proc/version命令得到的版本是
linux version 4.9.35-v7+
注:網上說樹莓派3B,有兩個串口,一個是硬件串口給了藍牙使用,一個是mini串口才是映射到了GPIO口上,但mini串口不穩定
開啓硬件串口方法分兩步,第一步將硬件串口與mini串口互換,第二步,關閉遠程控制功能;
第一步:
sudo nano /boot/config.txt
在該文件中增加一行代碼
dtoverlay=pi3-miniuart-bt (網上方法是下載pi3-miniuart-bt-overlay.dtb文件,然後拷貝到/boot/overlays目錄裏,命令是dtoverlay=pi3-miniuart-bt-overlay;pi3-miniuart-bt 文件是系統自帶的)
force_turbo=1
保存重啓後,通過 ls -l /dev 命令查詢,
可以看到 Serial0->ttyAMA0
Serial1->ttys0
表示已經互換了;
第二步:
sudo systemctl stop [email protected]
sudo systemctl disable [email protected]
停止並禁用掉串口遠程控制功能;
需要修改cmdline.txt
sudo vim /boot/cmdline.txt
刪除以下部分
console=ttyAMA0,115200
在樹莓派命令窗口中分別通過如下兩個命令停止和禁用串口的控制檯功能
sudo systemctl stop serial-getty@ttyAMA0.service sudo systemctl disable serial-getty@ttyAMA0.service
重新啓動樹莓派,使修改生效。
sudo reboot
一、WiringPi的C語言測試部分 轉載自 https://blog.csdn.net/hongshimizi/article/details/72796145
測試分兩步,第一步,下載安裝WiringPi,第二步,編寫C語言程序
第一步:
在終端安裝WiringPi
mkdir temp
cd temp
wget http://project-downloads.drogon.net/files/wiringPi.tgz
tar xf wiringPi.tgz
cd wiringPi/wiringPi/
sudo apt-get install libi2c-dev
make
sudo make install
第二步:
可以直接在當前的wiringPi文件夾下面新建 uart.c文件並保存,文件內容爲:
#include <stdio.h>
#include <wiringPi.h>
#include <wiringSerial.h>
int main(){
int fd;
if(wiringPiSetup()<0)
return 1;
if((fd=serialOpen("/dev/ttyAMA0",9600))<0)
return 1;
printf("serial test start ...\n");
serialPrintf(fd,"hello world!!\n");
//while(1){
// serialPutchar(fd,serialGetchar(fd));
// printf("can recive the message..\n");
//}
serialClose(fd);
return 0;
}
在終端中輸入已下命令(編譯和運行程序):
gcc –Wall uart.c –o uart –lwiringPi
sudo ./uart
這裏就簡單地向串口輸出 hello world!! 內容,並在終端中顯示調試信息 serial test start ...