打印
[STM32WB]

STM32WB5MMG 问题

[复制链接]
1396|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
flycamelaaa|  楼主 | 2024-4-25 09:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我使用 STM32WB5MMG 制作了一个 Demo,用于与 USB 加密狗或手机通信(BLE NOTIFICATION),并通过触发下降沿中断从 MAX30001(两个中断引脚 PC10 和 PC11,SPI1 通信)和 MAX30112 芯片(中断引脚 PD0,I2C3 通信)收集数据。但我发现了一些难以解决的问题。
问题描述: 1.
1.我的程序只有在第一次下载时才能正常运行。再次开机时,演示程序无法正常运行。
2.如果在 MX_APPE_Init() 函数中添加 APPD_Init(),且 CFG_DEBUGGER_SUPPORTED 为 0,则可以正常采集 MAX30112 的数据(断电后重启也正常)并通过蓝牙发送。但完全没有关于 MAX30001 的任何消息,我不知道问题出在哪里。
3.为此我去查看APPD_Init()函数,我发现影响最大的程序是__HAL_RCC_GPIOB_CLK_DISABLE()(上图所示)。注释掉这个语句,我就会只有第一次下载程序是正常的;不注释语句,我就只可以蓝牙接收MAX30112的数据,MAX30001失效,并且二次上电也是正常的。下图是我GPIO设置。
3.我运行了官方例程 BLE_HeartRate。运行完全正常。
4.我以前用SWV进行调试(没有添加蓝牙),只是单纯有线输出,它工作也是正常的
为解决这个问题,我该如何入手

使用特权

评论回复
沙发
夜阑风雨| | 2024-6-20 10:03 | 只看该作者
确保所有设备的电源供应稳定,没有电源干扰或电压波动。

使用特权

评论回复
板凳
一秒落纱| | 2024-6-20 13:00 | 只看该作者
检查复位电路,确保微控制器在上电时能够正确复位。

使用特权

评论回复
地板
光辉梦境| | 2024-6-20 15:00 | 只看该作者
确保所有外设的时钟配置正确,包括SPI1和I2C3的时钟。

使用特权

评论回复
5
淡漠安然| | 2024-6-20 17:00 | 只看该作者
检查是否有任何时钟配置在复位后丢失或被意外修改。

使用特权

评论回复
6
暖了夏天蓝了海| | 2024-6-20 21:00 | 只看该作者
根据您提供的GPIO设置图,检查所有相关的GPIO配置是否正确,包括模式、速度、上拉/下拉等。确保在复位后,GPIO配置能够保持不变。

使用特权

评论回复
7
远山寻你| | 2024-6-20 23:00 | 只看该作者
确保中断引脚(PC10、PC11和PD0)的中断配置正确,包括中断优先级和使能状态。

使用特权

评论回复
8
三生万物| | 2024-6-21 02:00 | 只看该作者
检查中断服务例程(ISR)是否正确处理了中断事件。

使用特权

评论回复
9
别乱了阵脚| | 2024-6-21 06:00 | 只看该作者
检查`MX_APPE_Init()`和`APPD_Init()`函数中的配置,确保没有冲突或错误的配置。

使用特权

评论回复
10
江河千里| | 2024-6-21 10:00 | 只看该作者
使用SWD或JTAG接口连接调试器,逐步执行代码,检查变量值和寄存器状态,以确定问题发生的位置。

使用特权

评论回复
11
小小蚂蚁举千斤| | 2024-6-23 16:47 | 只看该作者
检查复位电路确保稳定

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

667

主题

2844

帖子

0

粉丝