Arduino

Arduino

Uno / Nano / 101 ……
开源、便宜、无尽创想
ESP物联网

ESP物联网

掌控板
ESP8266 / ESP32
App Inventor

App Inventor

手机平板应用开发
……
卡片电脑

卡片电脑

树莓派
虚谷号
3D打印

3D打印

三维立体绘图
打印机操作及技巧
激光切割

激光切割

2D矢量绘图
切割机操作及技巧
大开眼界

大开眼界

围观神级作品
学习软硬兼施
源创分享

源创分享

自撰美文
经验分享

两块arduino用蓝牙通信

袁卓杰 发表了文章 • 0 个评论 • 167 次浏览 • 2019-04-14 11:16 • 来自相关话题

一直纠结于无线串口的使用,不如用两个HC06模块。不过这就很头疼了,模块默认都是从机模式,搜索全是HC05的资料,06的资料少之又少,刚开始使用05的资料套,大多指令都不一样。最重要的是我没有usb转串口的模块,还好我有R3板子,就为了把板子弄成USB转ttl ...查看全部
一直纠结于无线串口的使用,不如用两个HC06模块。不过这就很头疼了,模块默认都是从机模式,搜索全是HC05的资料,06的资料少之又少,刚开始使用05的资料套,大多指令都不一样。最重要的是我没有usb转串口的模块,还好我有R3板子,就为了把板子弄成USB转ttl,折腾一下午。
程序如下(没有USB转ttl才用)
#include
SoftwareSerial sc(7, 8);
void setup(){
 // put your setup code here, to run once:
Serial.begin(9600);
sc.begin(9600);
}
void loop() {
 while (Serial.available())
 {
  char shuju = Serial.read();
sc.print(shuju);
char c = sc.read();
Serial.print(c);
 }
}
因为没有转换模块,所以用板子代替,还好arduino有软窜口的库,看程序将蓝牙模块TX,RX,接好,这里因为模块出场设置的波特率是9600,停止位为1,这里我们就不用再去过多的设置,好。。。开始发射AT指令
打开串口,依次输入
AT
模块返回ok
//下一步更改波特率
发送:AT+BAUD1
      模块返回:OK1200
发送:AT+BAUD2
模块返回:OK2400
……
1---------1200
2---------2400
3---------4800
4---------9600
5---------19200
6---------38400
7---------57600
8---------115200
///////两个模块波特率必须一直,更改方法相同
更改模块主从
AT+ROLE=M//设置为主
//模块返回//OK+ROLE:M//
AT+ROLE=S//设置为从
//模块返回//OK+ROLE:S
//设置对方密码
AT+PINXXXX///四位,密码必须跟主机一样
主机模块设置完成
断电后将量模块通电,就有。。。。。gg...完,模块完了
重启后如果两个蓝牙通电后指示灯亮着不闪那就是配对成功了
 
设置完成后,将模块接在两块arduino板上,双机通信
主机程序:

#include
SoftwareSerial sc(7, 8);//7接rx,8接tx
void setup()
{
  // put your setup code here, to run once:
Serial.begin(9600);
  sc.begin(9600);

}

void loop() {
  while (Serial.available())
    {
    char shuju = Serial.read();

  sc.print(shuju);




    }
}
/////////////////////////////////////////////////////////////////丑陋的分割线////////////////////////////////////////////////////////////////
从机程序:

#include
SoftwareSerial sc(6, 7);
void setup()
{
  // put your setup code here, to run once:
Serial.begin(9600);
  sc.begin(9600);

}

void loop() {
  while (sc.available())
    {
    char shuju = sc.read();

  Serial.print(shuju);



    }
}
设置完了?那就打开串口监视器发信息吧(两个串口都打开)
PS:只能主机发给从机,除非你得蓝牙很NB
现在主机给从机发信息
先输入
捕获.PNG

发送,可以看到从机串口接到了主机信息

捕问问获.PNG