《博哥玩Arduino》- 蓝牙模块HC06 重命名
本帖最后由 单片机菜鸟 于 2016-11-27 21:21 编辑最近在研究蓝牙RGB灯,因为有多块蓝牙模块,然后由于名字是一样的,导致都不知道手机蓝牙到底连接到哪一块去了。那么就意味着 我们需要一个标识来区分蓝牙模块,这就意味着每个蓝牙模块应该可以自定义自己的名字,然后去查了一下资料,果然有AT指令可以支持,以下附上代码:
注意:我的板子是 Mega2560. 用UNO也可以的
/**
* 日期:2016/11/24
* 功能:设置蓝牙模块名字
* 作者:单片机菜鸟
*
* 运行完程序之后需要重启一下蓝牙模块
**/
#define LED 13
void setup()
{
pinMode(LED,OUTPUT);
Serial1.begin(9600);//这里应该和你的模块通信波特率一致
delay(100);
Serial1.println("AT");
delay(1000);
Serial1.println("AT+NAME 蓝牙台灯");//命名模块名
delay(100);
}
void loop()
{
digitalWrite(LED, HIGH);
delay(500);
digitalWrite(LED, LOW);
delay(500);
}
我这个蓝牙模块默认名字是 HC-06. 因为我在研究蓝牙RGB灯,所以我命名为“蓝牙台灯”.
注意点:
第一,我查资料说,AT指令格式应该是这样:"AT+NAME=蓝牙台灯",但是我发现这样的话,名字就变成了“=蓝牙台灯”,这是我比较奇怪的?
第二,设置完毕后,需要重启蓝牙模块才会有效,直接复位arduino板子就可以了。
博哥系列文章:
《博哥玩Arduino》-蓝牙小车-基础篇
http://www.geek-workshop.com/thread-27767-1-1.html (出处: 极客工坊)
《博哥玩Arduino》-蓝牙小车-实操篇
http://www.geek-workshop.com/thread-27777-1-1.html (出处: 极客工坊)
《博哥玩Arduino》-Arduino语法手册
http://www.geek-workshop.com/thread-27843-1-1.html (出处: 极客工坊)
《博哥玩Arduino》-WIFI小车-基础篇
http://www.geek-workshop.com/thread-27850-1-1.html (出处: 极客工坊)
《博哥玩Arduino》-WIFI小车-调试实操篇
http://www.geek-workshop.com/thread-27853-1-1.html (出处: 极客工坊)
《博哥玩Arduino》- 蓝牙模块HC06 重命名
http://www.geek-workshop.com/thread-27897-1-1.html (出处: 极客工坊)
《博哥玩Arduino》- 蓝牙RGB灯
http://www.geek-workshop.com/thread-27892-1-1.html(出处: 极客工坊) 不错!!! 人家说的是直接串口输入AT命令 jjwy 发表于 2016-11-25 11:56
人家说的是直接串口输入AT命令
我连的就是串口 "AT+NAME=蓝牙台灯" 这种方式是 HC05 的命令方式,HC06是 "AT+NAME 蓝牙台灯" 没错,只是E跟蓝之间应该是不用空格吧! :D 挺好的,以后可以做参考用 slotg 发表于 2016-11-25 18:59
"AT+NAME=蓝牙台灯" 这种方式是 HC05 的命令方式,HC06是 "AT+NAME 蓝牙台灯" 没错,只是E跟蓝之间应该是不 ...
我看我的HC05不行 非得用 "AT+NAME 蓝牙台灯"哈哈哈拿到商机给我发了HC06 P.919HY 发表于 2016-11-25 20:07
挺好的,以后可以做参考用
"AT+NAME=蓝牙台灯" 这种方式是 HC05 的命令方式,HC06是 "AT+NAME 蓝牙台灯" 没错
可以两种轮流设置一下 看看哪种有用 诺诺问一下,不是应该这样吗?"AT+NAME=”蓝牙台灯" " 275891381 发表于 2016-11-25 20:38
诺诺问一下,不是应该这样吗?"AT+NAME=”蓝牙台灯" "
不用的 手册中没有引号的 单片机菜鸟 发表于 2016-11-25 12:39
我连的就是串口
#include <SoftwareSerial.h> // 引用程式庫
// 定義連接藍牙模組的序列埠
SoftwareSerial BT(8, 9); // 接收腳, 傳送腳
char val;// 儲存接收資料的變數
void setup() {
Serial.begin(9600); // 與電腦序列埠連線
Serial.println("BT is ready!");
// 設定藍牙模組的連線速率
// 如果是HC-05,請改成38400
BT.begin(9600);
}
void loop() {
// 若收到「序列埠監控視窗」的資料,則送到藍牙模組
if (Serial.available()) {
val = Serial.read();
BT.print(val);
}
// 若收到藍牙模組的資料,則送到「序列埠監控視窗」
if (BT.available()) {
val = BT.read();
Serial.print(val);
}
}
//这个能方便一点,并且蓝牙4.0也可以,脚不接错就行 嗯就看你怎么弄了,你是串口监视器写入 jjwy 发表于 2016-11-26 18:01
#include // 引用程式庫
// 定義連接藍牙模組的序列埠
12# 单片机菜鸟
1 秒前
嗯就看你怎么弄了,你是串口监视器写入
页:
[1]