ST意法半导体
直播中

李秀兰

8年用户 1538经验值
私信 关注
[问答]

BlueNRG-LP 345如何在线调试?

我使用ST LINK V2在keil中下载程序是提示如下错误
Debugger - Cortex-M Error
Connection refused due to device mismatch!
Device connected to Debug Unit is different from device selected for project target:
STMicroelectronics BlueNRG-345

回帖(1)

醉清歌

2025-6-19 18:04:41

遇到 Keil 中调试 BlueNRG-345 时出现 Device connected to Debug Unit is different from device selected 的错误,通常由以下原因引起,请按步骤逐一排查:




解决方案步骤:


1. 确认工程目标设备选择正确



  • 打开 Keil 工程,进入 Options for Target(魔术棒图标) → Device 标签页。

  • 检查是否已正确选择 BlueNRG-345。若未选择该型号,请从列表中选择 STMicroelectronicsBlueNRG-345

  • 如果列表中没有 BlueNRG-345,请继续第 2 步。




2. 安装或更新 BlueNRG-LP 设备支持包



  • 在 Keil 中打开 Pack Installer(工具栏的绿色盒子图标)。

  • 搜索关键词 "BlueNRG""BlueNRG-LP"

  • 安装 STMicroelectronics::BlueNRG-LP DFPs(设备支持包),确保版本 ≥ 2.0.0

  • 安装完成后,重启 Keil 并重复第 1 步。




3. 检查调试器设置



  • 进入 Options for TargetDebug 标签页。

  • 在右侧选择 "ST-Link Debugger" → 点击 Settings

  • 关键检查项:

    • Port:设置为 SW(标准调试接口)。

    • Device Configuration → 点击 Update Target List

    • 确认 Device 识别为 BlueNRG-345(或类似条目)。

    • 如果显示为 Unknown Device

      • 进入 Flash Download 标签页 → 勾选 Reset and Run

      • 点击 Add,添加 BlueNRG-345 的 Flash 算法(通常名称包含 BlueNRGSPI)。






4. 更新 ST-LINK 固件



  • 使用 ST-LINK UtilitySTM32CubeProgrammer 更新固件:

    • 下载 STM32CubeProgrammer

    • 连接 ST-LINK V2 到电脑,打开软件。

    • 进入 HelpCheck for updates → 更新 ST-LINK 固件。


  • 完成后,重新插拔 ST-LINK 和开发板。




5. 检查硬件连接与复位电路



  • 接线检查:

    • 确保 SWD 接口连接正确:

      ST-LINK V2BlueNRG-345 开发板

      SWDIOPA13/SWDIO

      SWCLKPA14/SWCLK

      GNDGND

      3.3VVCC(可选,若板子无独立供电)

    • 注意: 某些开发板需通过跳线帽启用 SWD 接口。


  • 复位引脚:

    • 检查 NRST 引脚是否正常连接(避免悬空)。

    • 尝试 手动复位 开发板,然后在 Keil 中重试下载。





6. 修改 Keil 目标配置



  • 进入 Options for TargetTarget 标签页。

  • 检查 Read/Write Protection 是否开启(如开启请关闭)。

  • DebugSettingsConnect & Reset Options 中,选择 Under Reset 模式尝试连接。




7. 其他可能性排查



  • 开发板兼容性:确认开发板型号支持 BlueNRG-345(部分板卡兼容 BlueNRG-345 和 BlueNRG-355,需注意区别)。

  • 电源问题:用万用表检查开发板供电(3.3V)是否稳定。

  • 更换 ST-LINK:尝试另一个 ST-LINK 或开发板,排除硬件故障。




最终验证:


如果以上步骤仍无效,尝试在 STM32CubeProgrammer 中连接:



  1. 选择 ST-LINK 和 SWD 接口。

  2. 点击 Connect

    • 成功 → Keil 配置问题(重点检查第 3 步)。

    • 失败 → 硬件故障或目标芯片损坏。



通过逐步排查,问题通常集中在 设备支持包缺失ST-LINK 固件过旧Keil 调试配置错误 上。优先执行 第 2、3、4 步 可解决大部分问题。

举报

更多回帖

发帖
×
20
完善资料,
赚取积分