2018年12月19日 星期三

藍芽HC-05跟HC-06

會想使用藍芽,是因為要自己安裝OTTO,一開始買了《超圖解Arduino 互動設計入門》,但還是看不懂,還好作者有繼續補充,在參考底下說明之後,大概有了一些了解
https://swf.com.tw/?p=693

連線方式參考底下
https://swf.com.tw/?p=712


HC-06比較簡單,通電之後,只要不配對,就是AT MODE,

但是,HC-05就比較麻煩,要先讓KEY腳位通電之後,才可以送電給藍芽模組,所以有些已經焊好底板的模組,會拉一個按鈕在底板上,只要一直按著按鈕,再通電,然後放掉,就可以進入AT MODE去做設定了。

可是,外觀不知道怎麼判斷

注意,有些HC-06模組的AT指令輸入方式跟HC-05一樣,其實,在測試幾個模組之後,發現對岸的商品真的,嗯,變化多端,因為有的指令甚至是綜合兩種模式,有機會在一一列出來。

HC-05的接線跟Arduino的程式可以參考底下文章
https://www.instructables.com/id/Modify-The-HC-05-Bluetooth-Module-Defaults-Using-A/

接線方式
HC-05 GND --- Arduino GND Pin
HC-05 VCC (5V) --- Arduino 5V,  3.3V比較安全 
HC-05 TX --- Arduino Pin 10 (soft RX)
HC-05 RX --- Arduino Pin11 (soft TX)
HC-05 Key或EN (PIN 34) --- Arduino Pin 9

程式碼,底下所謂的"再接電"指的是手動,先不對藍芽通電,再手動接上去
#include <SoftwareSerial.h>

SoftwareSerial BTSerial(10, 11); // RX | TX

void setup()
{
  pinMode(9, OUTPUT);  // 先接電HC-05 pin 34 (key) ,再接電給藍芽模組
  digitalWrite(9, HIGH);
  Serial.begin(9600);
  Serial.println("Enter AT commands:");
  BTSerial.begin(38400);  // HC-05 default speed in AT command more
}

void loop()
{

  // Keep reading from HC-05 and send to Arduino Serial Monitor
  if (BTSerial.available())
    Serial.write(BTSerial.read());

  // Keep reading from Arduino Serial Monitor and send to HC-05
  if (Serial.available())
    BTSerial.write(Serial.read());
}

實際要連線時卻有遇到問題,可以從下圖看到一開始是失敗的,ERROR兩次之後才成功,找不到原因,而且幾乎每次都這樣。


輸入AT COMMAND,操作可以參考底下這一篇
https://home.gamer.com.tw/creationDetail.php?sn=3905171

底下的設定內容是以OTTO當例子
設定名稱:"AT+NAME=Zowi"
設定密碼:"AT+PSWD=1234"
設定速率:"AT+UART=115200,1,0"


在我買到的模組裡面,還有一種設定密碼的方法,AT+PIN1234:將連線密碼換為「1234」



底下是從購買模組的網站抓來的內容。

HC-05蓝牙转串口适配器模块组 CSR主从一体51单片机

            
产品介绍:
绝对原厂,支持主从一体,可用AT命令切换主从。
资料:http://pan.baidu.com/s/1nuOjQel
【产品系列命名规则介绍】:本公司蓝牙核心模块产品有:
HC-05是主从一体化的蓝牙串口模块,主从可指令切换,指令丰富齐全(供电电压 3.3V~3.6V)
HC-06是主从一体化的蓝牙串口模块,主从可指令切换,指令少于HC-05,使用简单。(供电电压 3.3V~3.6V)
主机:用来搜索从设备,不能被其他设备搜索。(带白点的蓝牙模块)
从机:用来被搜索的设备,不能主动搜索其他设备。
主从连上以后就相当于一根串口线使用,这个时候就不分主从,也就是透传模式。
【本模块可设置为主机或从机,主机能和从机配对通信,从机与从机之间或主机与主机之间不能通信,从机能和电脑、手机等的蓝牙配对通信,购买时默认为从机】
【注:HC-05主机可以和06从机互相配对】
1、 采用CSR主流蓝牙芯片,蓝牙V2.0协议标准。
2、模块供电电压:3.3V~3.6V。
3、 默认参数:波特率 9600、配对码 1234、工作模式 从机。
4、 核心模块尺寸大小为:27mm x 13 mm x 2mm。
5、 工作电流:配对中:30~40mA   配对完毕未通信:2~8Ma    通信中:8mA   无休眠。
6、 通讯距离:空旷条件下10M,正常使用环境  8M左右。
7、 用于GPS导航系统,水电煤气抄表系统,工业现场采控系统,可以与蓝牙笔记本电脑、电脑加蓝牙适配器、PDA等设备进行无缝连接。
8、可以对STC单片机无线升级和下载程序。
凡带有蓝牙功能的产品必须通过BQB认证,否则该产品就会被蓝牙技术联盟(BluetoothSpecialInterest Group, 简称SIG) 视为侵权。具有BQB认证的蓝牙产品更有利于出口到海外市场!不管是拿来研发或是代销都有质量保证!
 引  脚名称  说明
 1
     TX            模块串口发送脚(TTL电平,不能直接接RS232电平),可直接接单片机的RX
 2 RX 模块串口接收脚(TTL电平,不能直接接RS232电平),可直接接单片机的TX
 12 VCC 电源3.3V
 13 GND 地
 32 LED 配对状态输出显示
 34 KEY 用于进入AT状态,高电平有效(悬空默认为低电平)
模块进入AT指令有两种方法
1:在模块上电之前(也可以同时),把KEY脚设置为高电平(或接VCC),然后再对模块上电。此时LED慢闪(2S一次),模块进入AT状态,波特率固定为38400.
2:在模块上电的时候,把KEY脚设置为低电平(或接GND),此时LED快闪(1S两次),然后再把KEY脚设置为高电平(或接VCC),模块也会进入AT指令,但是LED依旧快闪,此时波特率为默认波特率9600.
电脑与单片机数据传输
下图中的USB-TTL参数架为广州汇承最新研发的参数架HC-USB-P,专门为HC蓝牙系列产品量身定做功能强大的参数架。客户可以用该参数架对模块进行更改参数和检测,大大方便了客户使用蓝牙模块过程中遇到的各种问题。
产品特性:
1、led引脚指示蓝牙连接状态,输出脉冲表示没有蓝牙连接,输出高表示蓝牙已连接并打开了端口
2、电源电压3.3V,未配对时电流约30mA,配对后约8mA,绝对禁止接反电源!电源绝对禁止超过4.2V!
3、接口电平3.3V,可以直接连接各种单片机(51,AVR,PIC,ARM,MSP430等),5V单片机最好串联一个1K电阻再与模块直接连接,无需MAX232也不能经过MAX232!
4、空旷地有效距离10米,超过10米也是可能的,但不对此距离的连接质量做保证
5、配对以后当全双工串口使用,无需了解任何蓝牙协议,但仅支持8位数据位、1位停止位、无奇偶校验的通信格式,这也是最常用的通信格式,不支持其他格式。
6、在未建立蓝牙连接时支持通过AT指令设置波特率、名称、配对密码,设置的参数掉电保存。蓝牙连接以后自动切换到透传模式
7、体积小巧(2.7cm*1.3cm),工厂贴片生产,保证贴片质量。
8、该链接为从机,从机能与各种带蓝牙功能的电脑、蓝牙主机、大部分带蓝牙的手机、PDA、PSP等智能终端配对,从机之间不能配对
AT指令集
HC-05嵌入式蓝牙串口通讯模块(以下简称模块)具有两种工作模式:命令响应工作模式和自动连接工作模式,在自动连接工作模式下模块又可分为主(Master)、从(Slave)和回环(Loopback)三种工作角色。当模块处于自动连接工作模式时,将自动根据事先设定的方式连接的数据传输;当模块处于命令响应工作模式时能执行下述所有AT命令,用户可向模块发送各种    AT  指令,为模块设定控制参数或发布控制命令。通过控制模块外部引脚(PIO11)输入电平,可以实现模块工作状态的动态转换。
串口模块用到的引脚定义:
1、PIO8连接LED,指示模块工作状态,模块上电后闪烁,不同的状态闪烁间隔不同。
2、PIO9连接LED,指示模块连接成功,蓝牙串口匹配连接成功后,LED长亮。
3、PIO11模块状态切换脚,高电平-->AT命令响应工作状态,低电平或悬空-->蓝牙常规工作状态。
4、模块上已带有复位电路,重新上电即完成复位。
设置为主模块的步骤:
1、PIO11一直置高,然后对模块上电。
2、上电以后,模块进入AT命令响应状态。
3、超级终端或其他串口工具,设置波特率38400,数据位8位,停止位1位,无校验位,无流控制。
4、串口发送字符“AT+ROLE=1\r\n”,成功返回“OK\r\n”,其中\r\n为回车换行。
5、PIO置低,重新上电,模块为主模块,自动搜索从模块,建立连接。


藍芽CC2541


低待机功耗 90uA~400uA
远连接距离 100英尺/60米
快反应速度 0.4秒
安卓、苹果、PC、MAC全通用.
收发无字节限制,最高可达3K Bytes/秒
不需要做MFI
IOS系统支持.
Android 4.3系统完美支持.
主从一体模块,具有透传,远控,PIO采集三种功能,通过AT指令集进行切换和设置.
蓝牙串口模块一样,在不改PCB和下位机程序的情况下轻松升级到蓝牙4.0!
蓝牙串口模块,采用TI CC2541,尺寸为28*13*2.3mm

沒有留言:

張貼留言