Dfrobot_wiki_Bluetooth_Bee_V2_Users_Manual - jimaobian/DFRobotWikiCn GitHub Wiki

Bluetooth Bee V2 Users Manual

Dreamfactory梦工厂

TEL:(北京总部)庄先生 010-82355005

(成都公司)卫先生 15902808530

(上海公司)桑先生 13774201234

Bluetooth Bee V2

A. 注意!在没有认真阅读本说明之前,请勿给模块加电!错误接线将导致模块永久性损坏或烧毁微控制器。

B. 注意!请认真查看引脚功能说明,正确接线!请勿将电源反接,否则将导致模块永久性损坏。

C. 注意!本产品使用电源电压为直流3.3 V,请勿使用超出额定电压的电源!保证电源的稳定,如果出现高压脉冲,可能会导致微控制器永久性损坏。

D. 注意!本产品无防水防潮功能,请在干燥环境下保存或使用!不可将重物堆积在上面。

概 述 如今大多高端电子设备都配备蓝牙技术,如笔记本电脑、手机、PDA等等,蓝牙技术结束了“线缆噩梦”进入了全新的无线时代。

   Bluetooth Bee V2蓝牙无线数传模块采用XBEE造型设计,体积尺寸紧凑,兼容XBEE的扩展底座,适用于各种3.3V的单片机系统,模块可以使用AT

指令设置波特率和主从机模式。

   板载LINK指示灯,可以了解模块的配对情况,配对成功后LINK灯常亮;自带高效板载天线,天线外露使信号质量更好发射距离更远,透明串口,可与

各种蓝牙适配器、蓝牙手机配对使用。人性化的设计为二次开发提供便利。

   Bluetooth Bee V2蓝牙无线模块可以使用XBEE适配器修改波特率和主从机模式。可以使用XBEE底座插接到Arduino控制器上,从而实现蓝牙无线控

制。 性能描述 1. 蓝牙芯片:CSR BC417143

2. 蓝牙协议:Bluetooth Specification v2.0+EDR

3. USB协议:USB v1.1/2.0

4. 工作频率:2.4~2.48GHz unlicensed ISM band

5. 调制方式:GFSK(Gaussian Frequency Shift Keying)

6. 发射功率:≤4dBm, Class 2

7. 传输距离:20~30m in free space

8. 灵敏度:≤-84dBm at 0.1% BER

9. 传输速率:Asynchronous: 2.1Mbps(Max) / 160 kbps;Synchronous: 1Mbps/1Mbps

10. 安全特性:Authentication and encryption

11. 支持profiles:Bluetooth serial port

12. 串口默认设置:1200~115200/N/ 8/1,默认波特率:9600/N/ 8/1,从机模式

13. 输入电压:+3.3V DC/50mA

14. 工作温度:–20°C~+55°C

15. 模块尺寸:32×24×9mm

模块引脚定义

模块的设置 Bluetooth Bee V2蓝牙模块支持AT指令设置波特率和主从机模式。如下图所示,模块有一个拨码开关是AT命令模式开关,拨到AT Mode端就进入AT命令模式,反之退出AT命令模式。

设置Bluetooth Bee V2蓝牙模块需要借助xbee适配器,如下图所示,将蓝牙模块插到xbee适配器上,然后将开关拨到AT Mode端,再插到电脑USB接口上,当然xbee适配器需要安装驱动程序。 xbee适配器驱动程序地址:http://www.ftdichip.com/Drivers/VCP.htm

接着打开串口助手,选择xbee适配器对应的COM口,设置波特率为38400,选中发送新行,其他默认。 注意:在AT模式中波特率默认为38400,和通讯时设置的波特率无关。

在发送栏中输入AT(不分大小写),选中“发送新行”表示命令结尾加回车符,然后点击发送,可看见模块返回OK,这表示AT指令通讯正常。当AT指令设置完毕后,将开关另一端退出AT命令模式,重新上电后设置才生效。 AT指令集如下: 1.测试指令: 指令 响应 参数 AT OK 无 2.模块重启指令: 指令 响应 参数 AT+RESET OK 无 3.设置和查询模块角色: 指令 响应 参数 AT+ROLE=< Param > OK Param:参数取值如下: 0 —— 从角色(Slave) 1 —— 主角色(Master) 2 —— 回环角色(Slave-Loop) 默认值:0 AT+ROLE? +ROLE: < Param > OK 模块角色说明: Slave(从角色) ——被动连接,可以和任意蓝牙适配器配对使用; Master (主角色)——查询周围从设备,并主动发起连接,从而建立主、从蓝牙设备间的透明数据传输通道。 Slave-Loop(回环角色) ———被动连接,接收远程蓝牙主设备数据并将数据原样返回给远程蓝牙主设备; 4.设置和查询配对码: 指令 响应 参数 AT+PSWD=< Param > OK Param: 配对码 默认值: “1234” AT+PSWD? + PSWD: < Param > OK 5.设置和查询串口参数: 指令 响应 参数 AT+ UART=< Param1 >,< Param2 >,< Param3 > OK Param1: 波特率( bits/s) 取值如下(十进制): 4800 9600 19200 38400 57600 115200 230400 460800 921600 1382400 Param2: 停止位 0 —— 1 位 1 —— 2 位 Param3:校验位 0 —— None 1 —— Odd 2 —— Even 默认设置:9600,0,0 AT+ UART? + UART :< Param1 >,< Param2 >,< Param3> OK 举例:设置串口波特率:115200,1位停止位,无校验 AT+ UART=115200,0,0\r\n OK AT+ UART? +UART:115200,0,0 OK

注:在应用中,选择1位停止位,无校验。

从机模块的使用

Bluetooth Bee V2蓝牙模块使用xbee底座连接到Arduino上,如下图:

使用蓝牙适配器和Bluetooth Bee V2配对时,蓝牙适配器不需要驱动程序。可配合笔记本电脑、PDA 、蓝牙手机等设备直接使用,配对密码“1234”。 Bluetooth Bee V2蓝牙模块基于蓝牙2.0规范,兼容蓝牙1.1、蓝牙1.2。使用蓝牙适配器建议安装一个管理软件IVT BlueSoleil(网上有下载),安装后,插上蓝牙适配器便会映射2个COM口出来,但不是我们需要的端口。

Bluetooth Bee V2蓝牙模块插到单片机或Arduino上,蓝牙适配器插到电脑上,打开IVT BlueSoleil软件,黄色的球体就是蓝牙适配器,在黄色的球体上点右键→搜索设备,这是就会出现一个带问号的蓝色球体,这个就是我们的Bluetooth Bee V2蓝牙模块了,在问号球体上点右键→配对,会出现下面的对话框,要求填写蓝牙口令,模块默认为“1234”,填好后点确定,配对后指示灯会一闪一闪的。

在问号球体上点右键→搜索服务,将会出现一个串口,接下来需要连接模块和适配器,在问号球体上点右键→连接蓝牙串口(如COM30),这个新产生的COM端口号就是要用的串口号了。连接成功后,问号球体会由蓝色变为绿色,指示灯的闪烁也变为亮1秒灭3秒,并有虚线箭头线表示正在传输数据,写一段Arduino演示代码,波特率为115200,必须和Bluetooth Bee V2蓝牙模块的波特率(115200)一致。

注意:如果使用Arduino配合Bluetooth Bee V2蓝牙模块,在给Arduino下载程序时,请拔下Bluetooth Bee V2蓝牙模块。

Arduino演示代码: void setup() {

 Serial.begin(115200);             //初始化串口并设置波特率为115200

} void loop() {

 Serial.print("Hello!");           //串口向外发送字符串

Serial.println(" DFRobot"); //串口向外发送字符串 ,并带回车

 delay(1000);                  //延时

}

使用SSCOM3.2串口助手观察结果。串口助手设置串口号为COM30,波特率和程序设置的一致为115200,其他默认即可,打开串口就可以看见结果。

主从机模块的使用

2个模块成对使用时必须是一主一从,可使用AT指令将2个模块分别设置为主机和从机。主从成对使用不需要驱动程序,两个模块上电就能传输。 模块上LINK灯常亮表示配对完毕,此时串口功能已经启动。 一主一从成对正常使用时灯不会灭。如主机和从机距离太远而断线,则主机和从机的灯一直闪,如果它们距离再靠近,则又会找在一起而自动连上。主机会记忆它配好的从机,一上电给主机就会找它记忆的从机地址。 使用Arduino测试主从机通讯,将2只Bluetooth Bee V2蓝牙模块分别插到2只Arduino的扩展板上,如下图:

Arduino主机代码: void setup() {

  Serial.begin(9600);    //初始化串口并设置波特率为9600

}

void loop() {

  Serial.print("Hello!");   Serial.println("DFRobot");   delay(500);

}

Arduino从机代码: void setup() { Serial.begin(9600); //初始化串口并设置波特率为9600 }

void loop() {

   char val;

val = Serial.read(); //读串口 if(val!=-1)

 {     Serial.print(val);  //将收到是数据再通过串口发送出去  }

}

使用SSCOM3.2串口助手观察结果。串口助手设置串口号为从机的串口号,波特率和程序设置的一致为9600,其他默认即可,打开串口就可以看见结果。

使用中常遇到的问题:

1.此模块电源以外的其它管脚的工作电平应保持同模块电源电压一致,否则会损坏模块。 2.此模块在使用过程中造成的损坏,我司不承担责任并不予退换。 3.如果遇到技术问题,请到本公司售后论坛留言:http://bbs.roboticfan.com/board.aspx?boardid=53

⚠️ **GitHub.com Fallback** ⚠️