说一下前提,板子的蓝牙电路是自己对着沁恒官方画的,使用的是官方的Observer 例程代码,然后断点调试的时候可以进入到GAP_DEVICE_DISCOVERY_EVENT事件,周围附近是有蓝牙设备进行广播的,就是无法扫描到蓝牙广播进入GAP_DEVICE_INFO_EVENT事件,求助一下像这种情况是硬件问题还是程序有问题,有疑问就是如果硬件问题不应该连GAP_DEVICE_DISCOVERY_EVENT事件都进不来吗?
208烧录一个从机的代码,看下是否可以扫描到并建立连接。
如果烧录从机代码无问题,则烧录主机的代码,并检查:①芯片焊接是否良好,重点排查芯片的共地情况,芯片背面与板子的锡是有的;②检查晶振是否有贴上,作为主机功能时,是需要使用外部32K的。
试过烧录从机程序的,使用蓝牙调试工具依旧没有搜索到蓝牙设备,芯片、单片机晶振都是能正常跑其他程序的,会是关于蓝牙天线的布线问题吗?
烧录从机代码并查看打印信息是否有advertising,如果有打印却无法搜索到蓝牙信号,检查芯片焊接和天线是否直接ANT接地。否则天线会影响信号的好坏,但是不会影响到信号的存在。可以将PCB贴出来看一下。
单步调试的话是可以进入广播状态的,但是使用蓝牙调试工具扫描不到这个广播
也试过烧过其他的从机程序,也是无法扫描到单片机蓝牙
还有pcb的蓝牙天线就是离得板子太近了,在官方的说明中建议是天线两边净空,不知道这个会不会影响,下面贴出板图跟原理图
您好,使仿真打了断点后,MCU运行到断点处是暂停的,也不会再广播,广播期间建议不要打断点;
PCB天线下部是透明的,似乎没有敷GND铜。注意GND是一定要敷到距离天线下下方指定位置的。其他布线注意事项可以参考下方博客。CH582M 原理图设计 - debugdabiaoge - 博客园 (cnblogs.com)