电子说
步骤1:模块
观察交换机顶端板上的微小开关,我们将使用它将电路板置于AT命令模式。 - 详情请见:http://exploreembedded.com/wiki/Setting_up_Bluetooth_HC-05_with_Arduino#sthash.IDzTy4yN.dpuf
第2步:引脚功能:
引脚说明Statel可以连接到Arduino输入,以便了解连接的状态。配对或断开连接。 Rx cReceive模块的Pin。建议使用分离器中所示的分压器。 Tx可以直接连接到连接到Arduino 5v的GND引脚的Arduino Rx引脚GND这个分线板上有一个内部3.3v稳压器。
步骤3:简单数据传输示例
我们将从一个非常简单的示例开始,在HC-05和智能手机之间建立串行连接并发送/接收消息。您可以将示例转发到控制设备或记录您希望的任何数据。
第4步:连接:
我们将使用Arduino的引脚10和11来连接HC-05并使用SoftwareSerial库与模块通信。 arduino上的硬件串口用于从计算机向Arduino发送/接收消息。
建议模块Rx线上的分压器确保模块不接收3.3v以上的信号。在实际应用中,如果需要硬件中断,可能需要使用HW串口本身连接蓝牙模块。
步骤5:代码:
这可能是测试支持串口通信的所有设备的最简单代码。它只是简单地将计算机终端和HC-05连接在一起。代码将消息从终端发送到蓝牙模块,并将消息从蓝牙模块发送到终端。
#include
SoftwareSerial EEBlue(10,11);//RX | TX
void setup()
{
Serial.begin(9600);
EEBlue.begin(9600);//comm的默认波特率,可能与您的模块不同。 Serial.println(“蓝牙门打开。 n从任何其他蓝牙设备连接到HC-05,配对密钥为1234!”);
}
void loop ()
{
//将任何数据从蓝牙传送到终端。 if(EEBlue.available())Serial.write(EEBlue.read());
//将所有数据从termial提供给蓝牙if(Serial.available())EEBlue.write(Serial.read ());
}
第6步:演示:
有许多Android应用程序可以将手机连接到蓝牙模块。我用蓝牙终端将它连接到HC-05。
步骤7:串行终端输出
Arduino终端上显示的输出。通过这种方式,我们建立了一个蓝牙链接,通过电话将消息从HC-05发送到Arduino。
步骤8:使用AT命令进行配置:
如前所述,您可能希望配置模块以设置各种设备名称,传递代码,波特率等。要完成所有这些操作,首先需要将模块置于AT命令模式。
步骤9:AT命令模式:
我们有一个带有开关的分线板,如第一张图所示,为此模块执行步骤如下:
从模块端断开+ 5v线,如上图中的钩图所示。
按住开关(不要释放它!)。
重新连接+ 5v连接。
现在松开开关,呼吸一下。观察模块上的LED每两秒钟开始闪烁一次,比正常断开模式慢。
将以下代码上传到Arduino。
#include
SoftwareSerial EEBlue(10,11);//RX | TX
void setup()
{
Serial.begin(9600); EEBlue.begin(38400);//命令模式的波特率。 Serial.println(“输入AT命令!”);
}
void loop()
{
//Feed any从蓝牙到终端的数据。
if(EEBlue.available())
Serial.write(EEBlue.read());
//将所有数据从termial提供给bluetooth
if(Serial.available())
EEBlue.write(Serial.read());
}
请注意,代码中唯一的变化是波特率。这是模块在命令模式下说话的速率。我们不需要改变终端上的任何东西,因为我们仍然在9600波特与Arduino说话。
步骤10:
打开终端命中AT,检查模块是否回送OK!
责任编辑:wv
全部0条评论
快来发表一下你的评论吧 !