蓝牙转串口(TTL)模块,蓝牙转串口,不须要知道蓝牙协议,只须要知道串口协议就好。我所用的是BT06,只能作从机,蓝牙接收数据。web
BT06蓝牙模块是专为智能无线数据传输而打造,遵循V3.0 蓝牙规范。
本模块支持UART接口,并支持SPP蓝牙串口协议,具备成本低、体积小、功耗低、收发灵敏性高等优势,只需配备少量的外围元件就能实现其强大功能。app
能够USB-TTL模块直接与蓝牙模块相连,但要注意 5V-5V,GND-GND,RXD-TXD,TXD-RXD。
也能够直接用开发板进行蓝牙设置,但注意不要插单片机,不然数据会冲突,由于单片机进行烧录也是用的RX,TX。
svg
状态指示LED:spa
LED显示 | 模块状态 |
---|---|
长亮 | 创建链接 |
均匀慢速闪烁 | 等待配对 |
在进行蓝牙与电脑链接上以后,打开串口助手(或者STC下载器自带的)打开串口能够进行AT指令设置,设置它的密码,名称以及波特率等
用户能够经过串口和 BT06蓝牙进行通讯,串口使用 Tx, Rx 两根信号线,波特 率 支 持
1200,2400,4800,9600,14400,19200,38400,57600,115200,230400,460800 和921600bps。串口缺省波特率为
9600bps。
(注:发 AT 指令时必须回车换行, AT 指令只能在模块未链接状态下才能生效,一旦蓝牙模块与设备链接上,蓝牙模块即进入数据透传模式。\r\n为直接按电脑回车键,如不能按回车键则加\r\n。AT指令不分大小写)
3d
通常默认名称是BT-04,默认密码为1234,手机打开蓝牙,在手机app端控制蓝牙发送数据。code
使用蓝牙时接受的数据由串口进行通信传给MCU,因此使用串口中断。
参考程序:xml
#include <reg52.h> #define uchar unsigned char void UART_INIT() { SM0 = 0; SM1 = 1;//串口工做方式1 REN = 1;//容许串口接收 EA = 1;//开总中断 ES = 1;//开串口中断 TMOD = 0x20;//8位自动重装模式 TH1 = 0xfd; TL1 = 0xfd;//9600波特率 TR1 = 1;//启动定时器1 } //串口中断 void UART_SER() interrupt 4 { if(RI) { RI = 0;//清除接收标志 switch(SBUF) { case 0x01:/*执行*/ ; break;//蓝牙接收1事进行的操做 } } } void main() { UART_INIT();//串口初始化 while(1) { } }