探索者 STM32F407 与 HC05 蓝牙模块相连

本文介绍使用STM32F407与HC05蓝牙模块连接时遇到的问题及解决办法。因串口资源冲突,尝试将串口3改为串口1后,出现模块无法检测的情况。通过对代码的仔细检查,最终找到并解决了问题。

项目场景:

通过 STM32F407 与蓝牙模块 HC05 相连


问题描述:

本想着蓝牙模块与STM32的连接应该比较顺利,按照正点原子的例程进行配置就好,此类博客在网上也已经有了很多。例如:

https://blog.youkuaiyun.com/qq_42177385/article/details/96502182

但是原子例程中用的是串口3,串口2和3由于我自身设计问题,已经被占用,因此打算改用串口1。在将例程程序修改之后,发现出现了模块检测不到的问题。

@Override public void run() { bytes = mmInStream.read(buffer); mHandler.obtainMessage(READ_DATA, bytes, -1, buffer).sendToTarget(); } 

原因分析:

按理说只需要将例程中 usart3.h 和 usart3.c 两个文件中涉及到串口3的内容依样画葫芦修改成串口1就好,因此问题应该是出现在某段代码修改有问题上。


解决方案:

usart3.c 文件中,将下面函数同样修改成串口1相关的函数名:

void USART1_IRQHandler(void)

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值