问答器(回答部分) 使用蓝牙通讯
在配置正常配对成功的情况下 两个蓝牙可以像串口一样来使用(以usart2为例)
向usart2发送数据 蓝牙就会向另一个配对设备发送数据
蓝牙收到的数据 可以从usart2读取(阻塞或非阻塞)
-
快闪:等待配对
-
慢闪:AT模式
-
双闪:配对成功
淘宝两块蓝牙模块 淘宝店家会贴心地附赠代码和教程
一般板子上串口的RXD/TXD会用跳线帽和PA9/PA10相连,这时候串口就是和板子通讯
把跳线帽拔了 用蓝牙的TXD连串口的RXD、用蓝牙的RXD连串口的TXD 这时候串口直接和蓝牙通讯
按住蓝牙上黑色的小按钮再给蓝牙通电 就可以用XCOM串口调试助手直接向蓝牙发送AT指令 蓝牙发送的回复也会显示在XCOM上
方法1的好处是不用编写代码即可调试蓝牙
另一种蓝牙进入AT模式的方法是通电后再一直按住小黑点 这时就可以从串口发送AT指令给板子 再由板子转发给蓝牙
方法2需要编写串口和蓝牙两部分的逻辑:比如usart1是电脑和板子之间的串口、usart2是蓝牙和板子之间的串口
首先从usart1读取电脑发来的AT指令 板子将AT指令转发给usart2
然后读取usart2的回复 再由板子发回给usart1 这样电脑就会收到蓝牙的回复
可以看看main.c的 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
-
蓝牙配对不上和代码关系不大 可能是配置原因也可能是硬件原因
-
两块蓝牙要设成不同的主从模式
-
配置蓝牙之后重新上电或发送:AT+RESET
-
STATE和EN貌似用处不大 KEY应该就是小黑点
-
print调试大法好!
ATK-HC05蓝牙模块常见问题汇总_20140708.pdf
(HAL库版本,适合NANO STM32F1开发板) 扩展实验1 ATK-HC05蓝牙串口模块实验