HC-06蓝牙模块设置与使用

由于项目需要用到Android手机控制单片机,所以用到了HC-06蓝牙模块(以下简称蓝牙模块),找了一些网上的参考资料发现好像不太全,折腾了半天才弄好,因此出此文记录一下,也希望能帮助到有需要的朋友.

本文主要介绍蓝牙模块与单片机(本文以Arduino为例)以及PC的连接通信

先上连接示意图
HC-06蓝牙模块设置与使用_第1张图片

为了配置蓝牙模块,我们先让单片机与蓝牙模块正常通信,这里需要在代码里控制数据传输与显示

/*
  测试通信之前首先要了解一下通信的流程
  PC电脑连接单片机,单片机连接蓝牙模块
  在电脑上用串口发送AT指令到单片机
  单片机接收到指令后通过数字口9发送指令到蓝牙模块的RX端
  蓝牙模块接收指令后通过TX发送给单片机数字口8
  单片机通过数字口8接收指令后再通过usb线输出到pc电脑
  【连线】
  数字口8----TXD
  数字口9----RXD
  VCC-----VCC
  GND-----GND
 */
    #include 
    SoftwareSerial BluetoothSerial(8, 9); // RX, TX
    char value;       //用于中转数据
    void setup() {
        //打开串行通信,等待端口打开:
        Serial.begin(9600);
        while (!Serial) {
            ; // 等待串口连接。
        }
        Serial.println("Serial Connected!");

        // 设置蓝牙串口通讯的速率 HC06默认是9600
        BluetoothSerial.begin(9600);
    }

    void loop() { // 循环
        if (Serial.available()) {   //检测单片机串口状态
            value = Serial.read();
            BluetoothSerial.write(value);//蓝牙模块将数据发送给单片机
        }

        if (BluetoothSerial.available()) {//检测蓝牙模块串口状态
            value = BluetoothSerial.read();
            Serial.write(value); //单片机将指令发送到蓝牙模块
        }

    }

将代码成功烧进单片机之后,打开PC上的串口调试助手,设置好调试助手的串口号(跟自己电脑上的单片机连接串口对应,博主是COM6),波特率(HC06默认是9600),校验位(无),数据位(8),

停止位(1),然后打开串口,发现数据接收框内正确收到单片机传来的”Serial Connected”字样,说明单片机与电脑连接正常

接下来对蓝牙模块进行配置.HC06有一个AT模式,与HC05蓝牙模块不同的是,它只需要上电(也就是接上VCC和GND)后它就进入了AT模式(此时红色的状态指示灯是快闪的)

首先发送AT指令到单片机,返回OK,说明蓝牙模块连接正常!

HC-06蓝牙模块设置与使用_第2张图片

所有的AT指令集说明

HC-06蓝牙模块设置与使用_第3张图片

接下来配置模块名称

HC-06蓝牙模块设置与使用_第4张图片

配置模块配对密码

HC-06蓝牙模块设置与使用_第5张图片

其他配置就不再赘述.

注意:配置完波特率之后,电脑端的串口调试助手需重启并设置对应的波特率才能进行下一步操作

这样蓝牙模块就能够正常使用了.

参考文章:
1.HC-05與HC-06藍牙模組補充說明(三):使用Arduino設定AT命令
http://swf.com.tw/?p=712

2.SoftwareSerial Library:
http://wiki.geek-workshop.com/doku.php?id=arduino:libraries:softwareserial

你可能感兴趣的:(单片机)