0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

藍牙模塊的使用_藍牙模塊小車的制作步驟

電子工程師 ? 作者:工程師陳翠 ? 2018-06-18 07:10 ? 次閱讀

一、本次實驗所需器材

1、Arduino UNO板

2、藍牙模塊

3、藍牙小車底盤(可從淘寶網(wǎng)購買)

4、L298驅(qū)動模塊:1個

3、面包板:1個

二、藍牙模塊的使用

實驗:給藍牙模塊發(fā)送h,回復(fù)i am here;發(fā)送b,回復(fù)see you.

硬件連接:

藍牙模塊的使用_藍牙模塊小車的制作步驟

代碼:

char getstr;

void setup()

{

Serial.begin(9600);

}

void loop()

{

getstr=Serial.read();

if(getstr==‘h’)

{

Serial.println(“I am here!”);

}

else if(getstr==‘b’){

Serial.println(“See you!”);

}

}

將以上代碼寫入arduino時,要注意先將藍牙斷開,寫入完成后,再連上藍牙,否則會出錯。

手機下載一個bluetooth spp或者藍牙串口程序即可,這里我用的是。

然后通過手機與該藍牙模塊進行連接,一般默認連接碼是1234或者0000。連接后,發(fā)送h,會顯示I am here,發(fā)送b,會顯示See you!

三、藍牙遙控小車制作

1、從網(wǎng)上購買了藍牙小車底盤,組裝后如下圖:

2、L298驅(qū)動模塊

該模塊的IN1、IN2、IN3、IN4分別連接arduino的12、11、10、9接口,電源12V口接arduino的5V,GND接地。

例子:

char getstr;

int in1=12;

int in2=11;

int in3=10;

int in4=9;

//上面定義了板上的4個控制端,12一組,34一組

void _mRight(int pin1,int pin2)//當(dāng)in1和in2中有一個接高位時,電機會向某一方向轉(zhuǎn)動

{

digitalWrite(pin1,HIGH);

digitalWrite(pin2,LOW);

}

void _mLeft(int pin1,int pin2)//同上

{

digitalWrite(pin1,LOW);

digitalWrite(pin2,HIGH);

}

void _mStop(int pin1,int pin2)//緊急制動,實際就是將電機兩個端短接了

{

digitalWrite(pin1,HIGH);

digitalWrite(pin2,HIGH);

}

void setup()

{

Serial.begin(9600);

pinMode(in1,OUTPUT);

pinMode(in2,OUTPUT);

pinMode(in3,OUTPUT);

pinMode(in4,OUTPUT);

//下面程序開始時讓控制端都為高電平,電機保持不動。

digitalWrite(in1,HIGH);

digitalWrite(in2,HIGH);

digitalWrite(in3,HIGH);

digitalWrite(in4,HIGH);

}

void loop()

{

getstr=Serial.read();

if(getstr==‘f’)

{

Serial.println(“go forward!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mRight(in1,in2);

_mRight(in3,in4);

}

else if(getstr==‘b’){

Serial.println(“go back!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mLeft(in1,in2);

_mLeft(in3,in4);

}

else if(getstr==‘l’){

Serial.println(“go left!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mRight(in1,in2);

_mLeft(in3,in4);

}

else if(getstr==‘r’){

Serial.println(“go right!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mRight(in3,in4);

_mLeft(in1,in2);

}

else if(getstr==‘s’){

Serial.println(“Stop!”);

_mStop(in1,in2);

_mStop(in3,in4);

}

}

注意,當(dāng)輸入fl 時,無論前往、后退、左轉(zhuǎn)、右轉(zhuǎn),電機都是先停一下,再轉(zhuǎn),這樣電機都流暢。

3、藍牙模塊

接法與二中藍牙模塊的使用接法相同。

4、超聲波測距模塊

連接方法是將VCC接5V,GND接地,trig接5口,Echo接6口。

5、硬件連接圖

6、代碼

char getstr;

int in1=12;

int in2=11;

int in3=10;

int in4=9;

//上面定義了板上的4個控制端,12一組,34一組

int TrigPin = 5;

int EchoPin = 6;

float cm;

int i=0;//記錄測量次數(shù),每5次取一下平均值

float cmsum;//計算5次總值

float cmeve;//計算5次平均值

void _mRun(int pin1,int pin2)//電機右轉(zhuǎn),電機到底是右轉(zhuǎn)還是左轉(zhuǎn)取決于電機端的接線和控制腳的順序

{

digitalWrite(pin1,HIGH);

digitalWrite(pin2,LOW);

}

void _mBack(int pin1,int pin2)//同上

{

digitalWrite(pin1,LOW);

digitalWrite(pin2,HIGH);

}

void _mStop(int pin1,int pin2)//緊急制動,實際就是將電機兩個端短接了

{

digitalWrite(pin1,HIGH);

digitalWrite(pin2,HIGH);

}

void setup()

{

Serial.begin(9600);

pinMode(in1,OUTPUT);

pinMode(in2,OUTPUT);

pinMode(in3,OUTPUT);

pinMode(in4,OUTPUT);

pinMode(TrigPin, OUTPUT);

pinMode(EchoPin, INPUT);

//下面程序開始時讓控制端都為高電平,電機保持不動。

digitalWrite(in1,HIGH);

digitalWrite(in2,HIGH);

digitalWrite(in3,HIGH);

digitalWrite(in4,HIGH);

}

void loop()

{

getstr=Serial.read();

delayMicroseconds(60);

digitalWrite(TrigPin, HIGH);

delayMicroseconds(60);

digitalWrite(TrigPin, LOW);

cm = pulseIn(EchoPin, HIGH) / 58.0; //將回波時間換算成cm

cm = (int(cm * 100.0)) / 100.0; //保留兩位小數(shù)

if (i==5){//連接測5次,計算平均值,如果小于10厘米則緊急停車

i=0;

cmeve=cmsum/5;

cmsum=0;

if (cmeve《10 and cmeve》0) {

Serial.println(cmeve);

_mStop(in1,in2);

_mStop(in3,in4);

}

}

else {

i=i+1;

cmsum=cmsum+cm;

}

if(getstr==‘f’)

{

Serial.println(“go forward!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mRun(in1,in2);

_mRun(in3,in4);

}

else if(getstr==‘b’){

Serial.println(“go back!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mBack(in1,in2);

_mBack(in3,in4);

}

else if(getstr==‘l’){

Serial.println(“go left!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mRun(in1,in2);

_mBack(in3,in4);

}

else if(getstr==‘r’){

Serial.println(“go left!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mRun(in3,in4);

_mBack(in1,in2);

}

else if(getstr==‘s’){

Serial.println(“Stop!”);

_mStop(in1,in2);

_mStop(in3,in4);

}

}

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 藍牙模塊
    +關(guān)注

    關(guān)注

    30

    文章

    556

    瀏覽量

    55617
收藏 人收藏

    評論

    相關(guān)推薦

    藍牙模塊控制電動小車

    菜鳥求助前輩:如何制作藍牙模塊控制電動小車
    發(fā)表于 03-15 21:09

    制作一個藍牙遙控小車

    本周我們來制作一個藍牙遙控小車,不得不說bluno nano的藍牙交互功能還是讓人眼前一亮,畢竟是首款集成藍牙4.0的arduino板。
    發(fā)表于 10-13 06:01

    藍牙模塊_電梯藍牙門禁應(yīng)用

    藍牙模塊_電梯藍牙門禁應(yīng)用。 電梯藍牙門禁,天工測控的低功耗藍牙模塊可以應(yīng)用于電梯門禁,外形可
    發(fā)表于 11-16 17:11 ?9次下載

    用手機藍牙APP控制的基于arduino制作藍牙小車

    本文檔的主要內(nèi)容詳細介紹的是用手機藍牙APP控制的基于arduino制作藍牙小車。
    發(fā)表于 10-15 08:00 ?87次下載

    SKYLAB的最新藍牙4.0模塊、藍牙4.2模塊藍牙5.0模塊的資料概述

     Ble 藍牙模塊是專為物聯(lián)網(wǎng)無線數(shù)據(jù)傳輸而生,BLE藍牙模塊以其超低功耗、快速連接、容易交互等特點,已廣泛應(yīng)用于物聯(lián)網(wǎng)藍牙設(shè)備中。目前 S
    發(fā)表于 11-30 08:00 ?54次下載

    一款用于智能小車無線控制藍牙模塊的介紹

    小車無線控制的藍牙模塊,BLE4.2藍牙模塊SKB369。 在藍牙智能
    的頭像 發(fā)表于 01-28 11:53 ?6708次閱讀

    基于stm32藍牙智能小車設(shè)計

    控制電機的轉(zhuǎn)動方向,使小車產(chǎn)生不同的轉(zhuǎn)動模式??刂?b class='flag-5'>小車的轉(zhuǎn)動模式通過藍牙模塊來實現(xiàn),利用手機藍牙助手和
    發(fā)表于 11-06 15:51 ?85次下載
    基于stm32<b class='flag-5'>藍牙</b>智能<b class='flag-5'>小車</b>設(shè)計

    關(guān)于藍牙模塊的簡易小車(基于51單片機)

    關(guān)于藍牙模塊的簡易小車(基于51單片機)文章目錄關(guān)于藍牙模塊的簡易小車(基于51單片機)一、HC
    發(fā)表于 11-23 16:20 ?26次下載
    關(guān)于<b class='flag-5'>藍牙</b><b class='flag-5'>模塊</b>的簡易<b class='flag-5'>小車</b>(基于51單片機)

    最簡單DIY的51藍牙遙控小車設(shè)計方案

    51單片機物聯(lián)網(wǎng)智能小車系列文章目錄第一篇:最簡單DIY的51藍牙遙控小車設(shè)計方案文章目錄51單片機物聯(lián)網(wǎng)智能小車系列文章目錄前言一、最簡單DIY的51
    發(fā)表于 11-23 16:22 ?41次下載
    最簡單DIY的51<b class='flag-5'>藍牙</b>遙控<b class='flag-5'>小車</b>設(shè)計方案

    基于51單片機的藍牙循跡小車

    ) 藍牙指令 + 藍牙模塊的學(xué)習(xí)(串口usart) 循跡整合代碼 藍牙整合代碼51單片機課程設(shè)計做了輛藍牙
    發(fā)表于 11-23 16:51 ?25次下載
    基于51單片機的<b class='flag-5'>藍牙</b>循跡<b class='flag-5'>小車</b>

    51單片機藍牙循跡小車

    51單片機藍牙循跡小車文章目錄51單片機藍牙循跡小車前言一、藍牙模塊、電機驅(qū)動
    發(fā)表于 11-23 17:06 ?54次下載
    51單片機<b class='flag-5'>藍牙</b>循跡<b class='flag-5'>小車</b>

    智能小車藍牙模塊

    很長時間沒有寫博客了,因為搞完這個小車以后就在暑假研究無人機去了,所以上一次的藍牙模塊一直沒有時間去寫,沒事現(xiàn)在補上- HC-05(我用的是這個模塊:因為價格中等,功能完善便宜的還有J
    發(fā)表于 12-27 19:26 ?3次下載
    智能<b class='flag-5'>小車</b>的<b class='flag-5'>藍牙</b><b class='flag-5'>模塊</b>

    基于stm32的智能小車作品(循跡避障藍牙)(下)

    基于stm32的智能小車作品(循跡避障藍牙)(下)五、避障小車制作1.超聲波模塊接線2.工作原理3. 超聲波避障程序六、
    發(fā)表于 12-28 19:03 ?79次下載
    基于stm32的智能<b class='flag-5'>小車</b>作品(循跡避障<b class='flag-5'>藍牙</b>)(下)

    制作自己的音頻藍牙模塊

    電子發(fā)燒友網(wǎng)站提供《開源硬件-我制作了自己的音頻藍牙模塊.zip》資料免費下載
    發(fā)表于 10-27 17:37 ?4次下載
    <b class='flag-5'>制作</b>自己的音頻<b class='flag-5'>藍牙</b><b class='flag-5'>模塊</b>

    什么是經(jīng)典藍牙模塊?

    ? 什么是經(jīng)典藍牙模塊? 前面我們已經(jīng)就藍牙模塊的概念做了了解,隨著時間的推移,產(chǎn)品越來越智能,需要的藍牙
    的頭像 發(fā)表于 05-24 14:52 ?378次閱讀
    什么是經(jīng)典<b class='flag-5'>藍牙</b><b class='flag-5'>模塊</b>?