課程目標
相關(guān)知識
- **藍牙:**是一種支持多個設(shè)備之間短距離通信(一般10m左右)的無線電技術(shù)。
藍牙的特點:
1、藍牙技術(shù)的適用設(shè)備多,無需電纜,通過無線使電腦和電信連網(wǎng)進行通信。
2、藍牙技術(shù)的工作頻段全球通用,適用于全球范圍內(nèi)用戶無界限使用。
3、藍牙技術(shù)的安全性和抗干擾能力強。
4、傳輸距離較短。
5、通過跳頻擴頻技術(shù)進行傳播
**藍牙串口模塊:**藍牙串口模塊是基于SPP協(xié)議(Serial PortProfile),能在藍牙設(shè)備之間創(chuàng)建串口進行數(shù)據(jù)傳輸?shù)囊环N設(shè)備,廣泛應(yīng)用在具有藍牙功能的電子設(shè)備上。
藍牙串口模塊通信模型:
電路搭建
所需材料
ArduinoUNO * 1
HC-05藍牙串口模塊 * 1
LED * 1
杜邦線若干
電路連接
程序編寫
練習(xí)一:手機控制LED亮滅
根據(jù)上面的電路接線圖,編程實現(xiàn)通過手機發(fā)送指令,來控制LED的亮和滅。
圖形化方式:
代碼方式:
/* 項目名稱:手機控制LED
* 項目時間:2022.03.30
* 項目作者:MRX
*/
int LedPin = 7;
void setup()
{
Serial.begin(9600);
pinMode(LedPin,OUTPUT);
}
void loop()
{
while(Serial.available())
{
char Bluetooth=Serial.read();
if(Bluetooth=='a')
{
Serial.println("Turn ON");
digitalWrite(LedPin,HIGH);
}
if(Bluetooth=='b')
{
Serial.println("Turn OFF");
digitalWrite(LedPin,LOW);
}
}
}
手機端設(shè)置:
APP初始界面:
設(shè)置流程:
連接完成后,在命令行進行對應(yīng)的指令輸入,那么就可以發(fā)現(xiàn)LED能夠根據(jù)預(yù)設(shè)的指令進行變化了。
練習(xí)二:藍牙小車
實現(xiàn)通過手機藍牙輸入指令來控制小車進行對應(yīng)的運動控制。
電路連接:
圖形化方式:
代碼方式:
/* 項目名稱:藍牙控制小車運動
* 項目時間:2022.03.30
* 項目作者:MRX
*/
int IN1 = 2; // IN1 connected to pin 4
int IN2 = 4;
int ENA = 3;
int IN3 = 6; // IN3 connected to pin 6
int IN4 = 7;
int ENB = 5;
int value = 255; // the duty cycle
void Forward() {
digitalWrite(IN1,HIGH);
digitalWrite(IN2,LOW);
analogWrite(ENA,value);
digitalWrite(IN3,HIGH);
digitalWrite(IN4,LOW);
analogWrite(ENB,value);
}
void Back() {
digitalWrite(IN1,LOW);
digitalWrite(IN2,HIGH);
analogWrite(ENA,value);
digitalWrite(IN3,LOW);
digitalWrite(IN4,HIGH);
analogWrite(ENB,value);
}
void Right() {
digitalWrite(IN1,LOW);
digitalWrite(IN2,HIGH);
analogWrite(ENA,value);
digitalWrite(IN3,LOW);
digitalWrite(IN4,HIGH);
analogWrite(ENB,0);
}
void Left() {
digitalWrite(IN1,LOW);
digitalWrite(IN2,HIGH);
analogWrite(ENA,0);
digitalWrite(IN3,LOW);
digitalWrite(IN4,HIGH);
analogWrite(ENB,value);
}
void Stop() {
digitalWrite(IN1,LOW);
digitalWrite(IN2,LOW);
analogWrite(ENA,0);
digitalWrite(IN3,LOW);
digitalWrite(IN4,LOW);
analogWrite(ENB,0);
}
void setup(){
Serial.begin(9600);
for (int i = 4;i <= 10;i++){
pinMode(i, OUTPUT);
}
}
void loop(){
while(Serial.available())
{
char Bluetooth=Serial.read();
if(Bluetooth=='a')
{
Serial.println("Forward");
Forward();
}
if(Bluetooth=='b')
{
Serial.println("Bback");
Back();
}
if(Bluetooth=='c')
{
Serial.println("Left");
Left();
}
if(Bluetooth=='d')
{
Serial.println("Right");
Right();
}
if(Bluetooth=='e')
{
Serial.println("Stop");
Stop();
}
}
}
手機APP設(shè)置:
-
led燈
+關(guān)注
關(guān)注
22文章
1598瀏覽量
110032 -
串口通信
+關(guān)注
關(guān)注
34文章
1643瀏覽量
57009 -
藍牙模塊
+關(guān)注
關(guān)注
30文章
614瀏覽量
56810 -
Arduino
+關(guān)注
關(guān)注
190文章
6501瀏覽量
193065
發(fā)布評論請先 登錄
用于 Zigbee 技術(shù)應(yīng)用/Thread/藍牙?應(yīng)用的 2.4 GHz 前端模塊 skyworksinc

用于 WLAN 和藍牙?應(yīng)用的 2.4 GHz、256 QAM 前端模塊 skyworksinc

用于 Zigbee 技術(shù)應(yīng)用/Thread / 藍牙?應(yīng)用的 2.4 GHz 前端模塊 skyworksinc

藍牙低功耗模塊的原理和應(yīng)用介紹
用于 Zigbee?/Thread/藍牙?信號應(yīng)用的 2.4 GHz 前端模塊 skyworksinc

用于 Zigbee?/Thread/藍牙?應(yīng)用的 2.4 GHz 前端模塊 skyworksinc

芯知識 BLE(低功耗藍牙模塊)和SPP(傳統(tǒng)藍牙模塊)的對比
如何實現(xiàn)藍牙模塊的功耗優(yōu)化?

如何使用Arduino實現(xiàn)CAN總線通信
物聯(lián)網(wǎng)系統(tǒng)中常用的低功耗自組網(wǎng)無線傳輸方案(二)_藍牙模塊篇


電腦端如何和藍牙模塊建立連接通訊# 藍牙模塊# 物聯(lián)網(wǎng)# 串口通訊# 無線連接# spp協(xié)議# 雙模# 低功耗
藍牙模塊如何提升游戲設(shè)備的體驗?


評論