0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

蓝牙模块的使用_蓝牙模块小车的制作步骤

电子工程师 作者:工程师陈翠 2018-06-18 07:10 次阅读

一、本次实验所需器材

1、Arduino UNO板

2、蓝牙模块

3、蓝牙小车底盘(可从淘宝网购买)

4、L298驱动模块:1个

3、面包板:1个

二、蓝牙模块的使用

实验:给蓝牙模块发送h,回复i am here;发送b,回复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。连接后,发送h,会显示I am here,发送b,会显示See you!

三、蓝牙遥控小车制作

1、从网上购买了蓝牙小车底盘,组装后如下图:

2、L298驱动模块

该模块的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)//当in1和in2中有一个接高位时,电机会向某一方向转动

{

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);

}

}

注意,当输入fl 时,无论前往、后退、左转、右转,电机都是先停一下,再转,这样电机都流畅。

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;//记录测量次数,每5次取一下平均值

float cmsum;//计算5次总值

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

void _mRun(int pin1,int pin2)//电机右转,电机到底是右转还是左转取决于电机端的接线和控制脚的顺序

{

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; //保留两位小数

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);

}

}

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 蓝牙模块
    +关注

    关注

    30

    文章

    453

    浏览量

    55075
收藏 人收藏

    评论

    相关推荐

    蓝牙模块有什么特点?有何好处?#蓝牙

    蓝牙模块
    电子学习
    发布于 :2023年02月08日 12:09:24

    蓝牙模块控制电动小车

    菜鸟求助前辈:如何制作蓝牙模块控制电动小车
    发表于 03-15 21:09

    DIY 制作蓝牙遥控小车

    `大学毕业后,就利用业余时间做一个蓝牙遥控小车,就在网上找资料及购买配件。用STC89S52单片机控制小车, LN298电机驱动模块驱动小车
    发表于 05-05 22:53

    最简单DIY的51蓝牙遥控小车设计方案是什么

    51单片机物联网智能小车系列文章目录第一篇:最简单DIY的51蓝牙遥控小车设计方案文章目录51单片机物联网智能小车系列文章目录前言一、最简单DIY的51
    发表于 12-01 08:13

    制作一个蓝牙遥控小车

    本周我们来制作一个蓝牙遥控小车,不得不说bluno nano的蓝牙交互功能还是让人眼前一亮,毕竟是首款集成蓝牙4.0的arduino板。
    发表于 10-13 06:01

    蓝牙透传模块简介之蓝牙透传模块优势分析

    蓝牙透传模块简介_蓝牙透传模块优势分析。 随着智能手机普及,很多消费产品如果不能跟手机交互都不好意思说是智能设备,那怎样把自家产品和手机“勾搭”上呢?答案是
    发表于 12-01 15:09 17次下载

    用手机蓝牙APP控制的基于arduino制作蓝牙小车

    本文档的主要内容详细介绍的是用手机蓝牙APP控制的基于arduino制作蓝牙小车
    发表于 10-15 08:00 87次下载

    一款用于智能小车无线控制蓝牙模块的介绍

    小车无线控制的蓝牙模块,BLE4.2蓝牙模块SKB369。 在蓝牙智能
    的头像 发表于 01-28 11:53 6386次阅读

    基于stm32蓝牙智能小车设计

    控制电机的转动方向,使小车产生不同的转动模式。控制小车的转动模式通过蓝牙模块来实现,利用手机蓝牙助手和
    发表于 11-06 15:51 84次下载
    基于stm32<b class='flag-5'>蓝牙</b>智能<b class='flag-5'>小车</b>设计

    关于蓝牙模块的简易小车(基于51单片机)

    关于蓝牙模块的简易小车(基于51单片机)文章目录关于蓝牙模块的简易小车(基于51单片机)一、HC
    发表于 11-23 16:20 26次下载
    关于<b class='flag-5'>蓝牙</b><b class='flag-5'>模块</b>的简易<b class='flag-5'>小车</b>(基于51单片机)

    最简单DIY的51蓝牙遥控小车设计方案

    51单片机物联网智能小车系列文章目录第一篇:最简单DIY的51蓝牙遥控小车设计方案文章目录51单片机物联网智能小车系列文章目录前言一、最简单DIY的51
    发表于 11-23 16:22 35次下载
    最简单DIY的51<b class='flag-5'>蓝牙</b>遥控<b class='flag-5'>小车</b>设计方案

    51单片机蓝牙循迹小车

    51单片机蓝牙循迹小车文章目录51单片机蓝牙循迹小车前言一、蓝牙模块、电机驱动
    发表于 11-23 17:06 52次下载
    51单片机<b class='flag-5'>蓝牙</b>循迹<b class='flag-5'>小车</b>

    智能小车蓝牙模块

    很长时间没有写博客了,因为搞完这个小车以后就在暑假研究无人机去了,所以上一次的蓝牙模块一直没有时间去写,没事现在补上- HC-05(我用的是这个模块:因为价格中等,功能完善便宜的还有J
    发表于 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. 超声波避障程序六、
    发表于 12-28 19:03 74次下载
    基于stm32的智能<b class='flag-5'>小车</b>作品(循迹避障<b class='flag-5'>蓝牙</b>)(下)

    制作自己的音频蓝牙模块

    电子发烧友网站提供《开源硬件-我制作了自己的音频蓝牙模块.zip》资料免费下载
    发表于 10-27 17:37 4次下载
    <b class='flag-5'>制作</b>自己的音频<b class='flag-5'>蓝牙</b><b class='flag-5'>模块</b>