这一page讲述了怎么用BT蓝牙来烧录程序到板子上,,以后再也不用拖着长长的线满地追着机器人跑了
蓝牙模块BT-HC05模块是一款高性能的蓝牙串口模块。 1、可用于各种带蓝牙功能的电脑、蓝牙主机、手机、PDA、PSP等智能终端配对。 2、宽波特率范围4800~1382400,并且模块兼容单片机系统。 3、当主从模式两个蓝牙模块配对成功后,可以简单的,更改为无线的蓝牙,让您设备或者产品更高级,更时尚。 4、您可以很容易的使用提供的蓝牙手机软件
我们得首先明白蓝牙卵用
蓝牙模块也称蓝牙串口通讯模块,原来它是和串口通讯有关,串口我们都知道,比如我平时USB-ISP烧写单片机程序,用的就是串口。但这是用导线把单片机和下载模块连接的,而蓝牙模块的作用,正是那一根导线。
发送方发送的数据并不是直接到接收方,而是先到模块,经过模块的中转,再到接收方。可以看到从发送方到模块这一段,用的是无线蓝牙传输(这正是我们需要的),而从模块到接收方是用有线(其实就是把模块插上去),蓝牙模块充当“传话人”的角色。
蓝牙模块上有五六个串口,其中主要用的是VCC&GND&RX&TX四个,也即是Serial通信的连接串口。我们在连接蓝牙模块和主体板子的时候,我们都要通过连接这四个接口来实现通信,连接方法如下: 其中板子和模块之间通讯时,TX&RX一定是交错连接的。
工作状态
HC-05有两种工作模式,官方称为命令响应工作模式和自动连接工作模式,我们可以理解为“参数设置模式”和“正常工作模式”。在参数设置模式下,用户可以通过AT指令对蓝牙模块进行常用参数的设置,比如名称、连接密码等。正常工作模式就是按照在用户设置的参数工作,配对、收发数据。
在参数设置模式下设置模块参数
参数设置模式又是AT模式。 进入AT模式: 对于HC-05设备,其蓝牙模块上有一个按钮。 在上电前按住按钮直到上电,蓝牙模块会进入AT模式,其表现为指示灯慢闪。 进入AT模式后,进行设备属性设置,通过arduino程序操作,如下:
#include <SoftwareSerial.h>
//初始一个软件串口 serial2(BT-Rxd, BT-Txd)
SoftwareSerial mySerial(10,11);
void setup() {
Serial.begin(9600);
mySerial.begin(115200);//设置AT模式的串口波特率--和板子匹配
}
void loop() {
if(Serial.available())
mySerial.write(Serial.read());
if(mySerial.available())
Serial.write(mySerial.read());
}
随后打开串口监视器,进入NL&CR模式,输入AT,如果返回OK,则说明正确进入AT模式。如下图: 随后使用AT指令设置其属性参数,这里主要使用的有:
AT+NAME=name //名字
AT+PSWD=1111 //密码
AT+ROLE=0 //0为从动,1为主动
AT+UART=115200,0,0 //波特率
传输波特率需要和你的板子一致,这样子才能实现笔记本烧录程序时能够通过BT烧入,所以需要查看一下你的板子的通信波特率,arduino的几款是这样子的:
uno,mega 用的是 115200
atmega328 用的是 57600
atmega168,atmega8 用的是 19200
好了!正题开始了,其实前面的很重要。
我们打开‘蓝牙设备管理’设置,win10同志你就点左下角那里,然后右键蓝牙进入设置。下拉点击‘更多蓝牙选项’,然后电机‘com端口’标签,添加一个com端,一路确定就好
就这么快,这就配置好了。。回到IDE上,选择端口,,啊!在这之前你要先让电脑连接BT哦,连接上了的话,模块频闪会变慢的,,然后你再选择端口,通常你会看见多了两个端口,回到刚才‘COM端口’配置窗口,会显示一个端口为‘传出’另一个为‘传入’,,我们选择传出的那个端口,然后就烧录吧!!!!
注意啊!,,,程序开始下载的时候,需要让板子复位一下,,如下图所示
好了,大功告成!!不过,还是挺麻烦的,烧录的时候还得复位一下,,能不能不复位啊,,有线烧录也不用啊。。我再研究研究