2019-01-18 18:04:17 xiang_123_ 阅读数 1967
  • arduino实战

    学习如何在arduino中使用各种传感器,包括人体红外传感器,超声波传感器,舵机控制,温湿度传感器,激光接收传感器等,空气质量传感器,wifi模块等....课程内容会不断的更新增加,只要发现比较有趣的传感器就会做对应的实战视频

    413 人正在学习 去看看 陈贤能

一、蓝牙模块与Arduino
主要分两步,第一步设置蓝牙模块(AT模式),如,设置成从动任何设备可连接,设置名称及密码等;第二步,编写相应的控制程序;
HC05(ZS-040)蓝牙模块与手机连接参考链接参考1

蓝牙模块AT设置相关参考3

蓝牙模块与手机进行通信参考2

以上几个参考链接,即可完成用手机蓝牙与arduino的通信,并控制对应舵机与led灯; (未在ubuntu上运行,待后续。。)

2017-10-07 11:50:42 changer_WE 阅读数 5782
  • arduino实战

    学习如何在arduino中使用各种传感器,包括人体红外传感器,超声波传感器,舵机控制,温湿度传感器,激光接收传感器等,空气质量传感器,wifi模块等....课程内容会不断的更新增加,只要发现比较有趣的传感器就会做对应的实战视频

    413 人正在学习 去看看 陈贤能

本人比较懒,纯文本

首先材料,L298N,步进电机,杜邦线,HC-05蓝牙模块,arduino模块

制作智能小车的连线部分网上都有,

这里只说蓝牙部分,首先你要依照网上所说的把hc-05进入AT调成从模式,别的随意

然后就是arduino与蓝牙模块的连接:5v---5v ,GND----GND,tx---rx,rx---tx

然后就是代码了:

#define IN1 2
#define IN2 4
#define IN3 5
#define IN4 7
#define ENA 3
#define ENB 6
#define TURNSPEED 100
#define RUNSPEED 60
void go_forward();
void turn_left();
void turn_right();
void go_back();
void setup() {
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
  pinMode(IN3, OUTPUT);
  pinMode(IN4, OUTPUT);
  pinMode(ENA, OUTPUT);
  pinMode(ENB, OUTPUT);
  Serial.begin(9600); 
  Serial.println("BT is ready!");
}
  int val;
void loop() {
  if (Serial.available()) {
  val = Serial.read();
  switch(val){
  case '0':
  stop_s();delay(100);break;
  case '1':
  go_forward(RUNSPEED,RUNSPEED);delay(100);break;
  case '2':
  turn_left(TURNSPEED,TURNSPEED);delay(100);break;
  case '3':
  go_back(RUNSPEED,RUNSPEED);delay(100);break;
  case '4':
  turn_right(TURNSPEED,TURNSPEED);delay(100);break;
  default:
  Serial.println("error");delay(100);break;
           }
    }
}
void stop_s(){
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,LOW);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,LOW);    
  }
void go_forward(int L,int R){
digitalWrite(IN1,HIGH);
digitalWrite(IN2,LOW);
digitalWrite(IN3,HIGH);
digitalWrite(IN4,LOW);
  analogWrite(ENA, L);//control speed
  analogWrite(ENB, R);//control speed
}
//the connection of my L298N is wrong
//IN1,IN2 is right,IN3,IN4 is left;
void turn_left(int L,int R){
digitalWrite(IN3,LOW);
digitalWrite(IN4,HIGH);
digitalWrite(IN1,HIGH);
digitalWrite(IN2,LOW);
  analogWrite(ENA, L);
  analogWrite(ENB, R);
}
void turn_right(int L,int R){
digitalWrite(IN3,HIGH);
digitalWrite(IN4,LOW);
digitalWrite(IN1,LOW);
digitalWrite(IN2,HIGH);
  analogWrite(ENA, L);
  analogWrite(ENB, R);
}
void go_back(int L,int R){
digitalWrite(IN1,LOW);
digitalWrite(IN2,HIGH);
digitalWrite(IN3,LOW);
digitalWrite(IN4,HIGH);
  analogWrite(ENA, L);
  analogWrite(ENB, R);
}



手机上下载蓝牙串口spp,键盘的界面进行设置信号输入到arduino的信号按钮,呵呵

在我尝试的过程中发现使用使用if语句达不到效果必须要使用case语句。

还有我的电机的连线是反的,IN1和IN2控制的是右边的电机。

最后感谢贴吧和CSDN的大佬们,也希望这篇文章对小伙伴们也有所帮助。




 

 

 

2019-12-17 10:19:56 weixin_42279993 阅读数 9
  • arduino实战

    学习如何在arduino中使用各种传感器,包括人体红外传感器,超声波传感器,舵机控制,温湿度传感器,激光接收传感器等,空气质量传感器,wifi模块等....课程内容会不断的更新增加,只要发现比较有趣的传感器就会做对应的实战视频

    413 人正在学习 去看看 陈贤能

目标:让Andriod手机蓝牙控制灯的亮灭

所用材料:Arduino UNO,笔记本,HC05蓝牙模块,Arduino bluetooth controller的安卓应用程序,LED灯和若干杜邦线

第一步:硬件连接

01 蓝牙模块和Arduino板连接(注意RXD和TXD不要接反了)

VCC 接 Arduino +5V

GND 接 Arduino GND

RXD 接 Arduino TX

TXD 接 Arduino RX

这里,有一点需要说明一下,HC05蓝牙模块的电压范围是3.6V-6V,最好别长时间用5V,可以连接一个简单的7分压电路进行分压,把电压降低。

02 LED灯和Arduino板连接

使用Arduino的11号端口,接到LED灯正极,LED灯负极接Arduino的GND

第二步:程序

int ledpin=11;
void setup() 
{
  // put your setup code here, to run once:
  Serial.begin(9600);
  pinMode(ledpin,OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  while(Serial.available())
  {
  char c=Serial.read();
  if(c=='A')
  {
    Serial.println("亮灯");
    digitalWrite(ledpin,HIGH);
  }
    if(c=='B')
  {
    Serial.println("灭灯");
    digitalWrite(ledpin,LOW);
  }
   if(c=='C')
  {
    Serial.println("闪灯");
    digitalWrite(ledpin,HIGH);
    delay(1000);
    digitalWrite(ledpin,LOW);
  }
  }
}

第三步:结果

通过手机应用程序Arduino bluetooth controlle,向Arduino板发送“A”、“B”、“C”指令,实现灯的亮灭。

 

2019-04-01 09:36:36 woshi_ziyu 阅读数 1971
  • arduino实战

    学习如何在arduino中使用各种传感器,包括人体红外传感器,超声波传感器,舵机控制,温湿度传感器,激光接收传感器等,空气质量传感器,wifi模块等....课程内容会不断的更新增加,只要发现比较有趣的传感器就会做对应的实战视频

    413 人正在学习 去看看 陈贤能

在本篇文章中,我们将主要介绍如何使用HC05蓝牙模块和Arduino开发板通过蓝牙进行通信和发送数据。在本文结束时,您将学习到:

● 有关蓝牙协议的基础信息

● 如何使用蓝牙发送数据

● 如何将AT-Command发送到HC05

在这里插入图片描述

蓝牙通信与协议简介

有几种无线通信方式,如NRF、ZigBee、Wi-Fi和蓝牙。

蓝牙协议: PAN网络中一种经济实惠的通信方法,最大数据速率为1Mb / S,使用2.4G频率工作在100米的标称范围内是一种常见的无线通信方式。

HC05模块是使用串行通信的蓝牙模块,主要用于电子项目。

HC05蓝牙模块重要规格参数:

● 工作电压:3.6V - 5V

● 内置天线:是的

● 自动连接到最后一个设备:是的

通过蓝牙向Arduino发送数据

HC05模块具有内部3.3v稳压器,这就是为什么可以将其连接到5v电压的原因。但我们强烈建议使用3.3V电压,因为HC05串行通信引脚的逻辑电压为3.3V。向模块提供5V可能会导致模块损坏。

为防止模块损坏并使其正常工作,应在arduino TX引脚和模块RX引脚之间使用电阻分压电路(5v至3.3v)。

连接主设备和从设备时,板上的蓝色和红色LED每2秒闪烁一次。如果它们未连接,则每2秒仅蓝色闪烁一次。

在这里插入图片描述

更多内容请参考以下链接:https://www.yiboard.com/thread-1129-1-1.html

2018-12-06 09:30:27 woshi_ziyu 阅读数 2107
  • arduino实战

    学习如何在arduino中使用各种传感器,包括人体红外传感器,超声波传感器,舵机控制,温湿度传感器,激光接收传感器等,空气质量传感器,wifi模块等....课程内容会不断的更新增加,只要发现比较有趣的传感器就会做对应的实战视频

    413 人正在学习 去看看 陈贤能

在本篇文章中,我们将学习如何使用HC-05模块通过蓝牙通信控制Arduino开发板。在文章中,我列举了两个示例,使用智能手机控制Arduino开发板,以及使用笔记本电脑或PC控制Arduino开发板。在我的上一篇文章中,我们已经学习了如何配置HC-05蓝牙模块,并且作为主设备和从设备,在两个独立的Arduino开发板板之间进行蓝牙通信。

在这里插入图片描述

在我们开始使用智能手机控制Arduino开发板的第一个示例之前,先仔细看看HC-05蓝牙模块。将它与只能设置为从机的HC-06模块相比较,HC-05也可以设置为主机,这样可以在两个独立的Arduino开发板之间进行通信。这个模块有几个不同的版本,但我推荐一个分线板的版本,因为以这种方式连接起来要容易得多。 HC-05模块是蓝牙SPP(串行端口协议)模块,这意味着它通过串行通信与Arduino通信。

本示例所需的组件如下:

● HC-05蓝牙模块

● Arduino开发板

● 面包板和跳线

电路原理图

以下是我们将模块连接到Arduino开发板的方法。

在这里插入图片描述

我使用的这个模块可以在3.6到6V的电压下工作,因为它带有一个包含电压调节器的分线板。但是,数据引脚的逻辑电压电平为3.3V。因此,Arduino的TX(具有5V输出的发送引脚)和蓝牙模块RX(仅支持3.3V的接收引脚)之间的线路需要通过分压器连接,以免烧毁模块。另一方面,蓝牙模块TX引脚和Arduino RX引脚之间的线路可以直接连接,因为来自蓝牙模块的3.3V信号足以被Arduino开发板上的高逻辑识别。

更多内容请参考以下链接:https://www.yiboard.com/thread-1005-1-1.html

没有更多推荐了,返回首页