日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

树莓派python蓝牙_Fen9Pi-05.树莓派 UNO蓝牙通信

發(fā)布時間:2025/4/16 57 豆豆
生活随笔 收集整理的這篇文章主要介紹了 树莓派python蓝牙_Fen9Pi-05.树莓派 UNO蓝牙通信 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前言

這是一篇偏向教程的文章,若是實踐的話,需要一些電路知識,arduino的基礎知識,raspbain

Desktop 的基本使用基礎。若有問題歡迎公眾號后臺留言。

1.?目標

arduino UNO 將 HC-SR501 MQ136 傳感器采集的數(shù)據(jù)

通過藍牙模塊 HC-06 發(fā)送,樹莓派調(diào)用python,使用 藍牙獲取數(shù)據(jù)并顯示。

2.?實現(xiàn)方法

2.1 arduino UNO 接線圖之 MQ-136

Ardunio?A0?pin?????Sensor?A0Arduino?5V?pin?????Sensor?VccArduino?GND?pin????Sensor?GND

2.2?arduino UNO 接線圖之 HC-SR501

2.3?arduino UNO 接線圖之 HC-06

VCC

VCCGND GNDTXD D10RXD D11

2.4 arduino 代碼實現(xiàn)

#include

SoftwareSerial BT(10, 11);int sensor=A0; //analog in mq-136int

sensorValue = 0; // intial sensor valueint pirPin = 7; //

HC-SR501int pirValue; //inital sensor value// creates a "virtual"

serial port/UART// connect BT module TX to D10// connect BT module

RX to D11// connect BT Vcc to 5V, GND to GNDvoid setup(){// set

digital pin to control as an outputpinMode(13, OUTPUT);// set the

data rate for the SoftwareSerial portBT.begin(9600);// Send test

message to other deviceBT.println("Hello from Arduino");}

char a; // stores incoming character from other devicevoid

loop(){if (BT.available()) // if text arrived in from BT

serial...{a=(BT.read());if (a=='1') // raspberry send "1" ,then UNO

reply datas{//digitalWrite(13, HIGH);//BT.println("LED

on");sensorValue=analogRead(sensor); //read input from

MQ-136pirValue = digitalRead(pirPin); //get value from

HC-SR501delay(1000); // slow down serial

port{BT.print("MQ135:");BT.println(sensorValue,DEC); //print MQ-135

sensorValue BT.print("HC-SR501:");BT.println(pirValue); // print

the HC-SR501}}}}

2.5 樹莓派藍牙配置

樹莓派打開桌面,點擊 LX終端,輸入下面的命令bluetoothctl

進入藍牙控制命令,依次輸入下面的操作

power

ondiscoverable?onagent?ondefault-agent

查詢 HC-06 的命令

scan on

執(zhí)行上述命令后,會得到 HC-06 的地址,記錄后備用

關(guān)閉掃描命令

scan off

將下面 xx:xx:xx:xx:xx:xx 替換為剛剛查到的 地址

pair

xx:xx:xx:xx:xx:xx

此處需要輸入密碼進行配對,配對碼 1234

Device?xx:xx:xx:xx:xx:xx?Connected:?yesRequest

PIN code

[agent]

Enter PIN code: 1234 ENTER

密碼配對完成后,退出

exit

退出藍牙控制命令后,輸入命令,其中 xx:xx:xx:xx:xx:xx 為 HC-06 的地址sudo

rfcomm --raw connect 0 xx:xx:xx:xx:xx:xx 1

執(zhí)行成功結(jié)果,如下:

Connected /dev/rfcomm0 to xx:xx:xx:xx:xx:xx on channel

1Press?CTRL-C?for?hangup

2.6 樹莓派代碼實現(xiàn) python

具體代碼如下:import

serialfrom time import sleep

bluetoothSerial = serial.Serial( "/dev/rfcomm0", baudrate=9600

)

sleep(1)while True:print "OK"bluetoothSerial.write("1")print "recv

from arduino : %s " %(bluetoothSerial.readline())sleep(2)

新打開一個 LX終端?,執(zhí)行命令sudo

nano recv.py

將上述代碼復制粘貼到文件中,退出保存

運行樹莓派接收端指令sudo

python?recv.py

--end--

聲明:本文章由網(wǎng)友投稿作為教育分享用途,如有侵權(quán)原作者可通過郵件及時和我們聯(lián)系刪除:freemanzk@qq.com

總結(jié)

以上是生活随笔為你收集整理的树莓派python蓝牙_Fen9Pi-05.树莓派 UNO蓝牙通信的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。