STM32蓝牙串口模块JDY-31使用教程
蓝牙串口 JDY-31
在进行单片机开发过程中难免会用到串口传输一些数据,本文介绍如何在 Windows 环境中连接蓝牙串口进行数据传输。
首先用串口工具(TTL)查看蓝牙模块是否正常工作(可以略过)
通过 AT 指令查看版本号(默认波特率为9600)
打开电脑蓝牙设置
按照如图顺序依次进行
选择相应的蓝牙模块
注意:电脑的 COM 端口需要作为传出,因为要求电脑启动连接。 蓝牙模块无法主动发动连接请求
操作后如下图
接着打开串口助手(这里使用 vofa+)
1:端口选择电脑的蓝牙端口,波特率为9600(根据自己的设定)
2:点击连接后会跳出 2 处的卡片,点击卡片输入 pin 码连接(pin码可通过 AT 指令配置和读取)
连接成功后蓝牙模块上闪烁的红灯会常亮
到此,蓝牙串口的配置就完成了。
接下来简单演示一下 STM32 配合蓝牙模块做串口使用。
首先连接模块到单片机的串口上
正常使用串口发送数据即可
while(1)
{
UART_printf(&huart1, "JDY-31-TEST\r\n");
HAL_Delay(500);
}
// 串口封装
#if 0
int UART_printf(UART_HandleTypeDef *huart, const char *fmt, ...)
{
va_list ap;
va_start(ap, fmt);
int length;
char buffer[128];
length = vsnprintf(buffer, 128, fmt, ap);
HAL_UART_Transmit(huart, (uint8_t *)buffer, length, HAL_MAX_DELAY);
va_end(ap);
return length;
}
#endif
在电脑端打开蓝牙串口即可接收到数据
以上是蓝牙串口的简单应用,有时做开发时可以少连几根线,或者远程传输一些数据,具有很强的实用性,使用起来也很简单。通过蓝牙串口也可以连接手机的蓝牙串口工具,方便调试。
此处附上 AT 指令,方便查阅:
BB两句:树莓派的蓝牙串口功能貌似不能和蓝牙模块共同使用,具体原因好像是树莓派连接蓝牙后若要启动蓝牙串口还需蓝牙设备向树莓派发送连接请求,而蓝牙模块不能发起请求,导致虽然树莓派连到了蓝牙模块,但无法使用蓝牙串口功能。而手机的蓝牙串口软件可以与树莓派建立起正常串口连接。
作者:Heclgg