[BLE(低功耗蓝牙)] 使用 VSCode 编译和调试BlueNRG-1 的代码

littleshrimp   2021-11-21 18:40 楼主

BlueNRG-1-VSCode

此 repo 是一个模板,用于设置 VSCode 以编译和调试 EMB-1061 BlueNRG-1 模块的代码

观看此视频以了解该项目的介绍

请注意:

这是一个正在进行的项目,存在一些问题和 jank。打印浮标之类的东西可能无法正常工作。当您决定使用该芯片时,请考虑到这一点。

不过,它仍然比每年为 IAR 或 MDK5 的许可证支付 1500 美元要好……

特征

  • OTA
  • 低功耗(纽扣电池可使用多年)

基本设置(所有操作系统)

  1. Fork这个模板用于您自己的项目并克隆到您的计算机
  2. 下载并安装 VSCode 并打开您克隆的项目
  3. 通过 marus25 安装 Cortex-Debug 扩展
    1. marus25.cortex-debug在扩展菜单中搜索并安装
  4. 安装Arm Cortex 调试工具

视窗设置

  1. 在你在VSCode中打开的项目中,打开修改.vscode/settings.json如下:
    1. 在集成终端中运行 getShort.bat 并以您的 Arm Cortex 调试工具版本的 bin 文件位置作为参数,例如: ./getshort.bat "C:\Program Files (x86)\GNU Arm Embedded Toolchain\10 2020-q4-major\bin"
    2. 复制输出并将其放入"cortex-debug.armToolchainPath"设置中,例如: '"cortex-debug.armToolchainPath": "C:/PROGRA\~2/GNUARM\~1/102020~1/bin",'
    3. 在资源管理器中打开您的 Arm Cortex 调试工具版本的文件位置,然后导航到\lib\gcc\arm-none-eabi并复制该位置的文件名。
      • 我的完整路径是 C:\Program Files (x86)\GNU Arm Embedded Toolchain\10 2020-q4-major\lib\gcc\arm-none-eabi
      • 我复制的文件名是10.2.1
    4. 将设置“armToolchainVersion”替换为您复制的文件名,例如: "armToolchainVersion": "10.2.1",
    5. (如果使用 JLink,则可选)将您的 JLink 服务器的安装位置复制到设置中"cortex-debug.JLinkGDBServerPath",例如: '"cortex-debug.JLinkGDBServerPath": "C:/Program Files (x86)/SEGGER/JLink_V635c/JLinkGDBServerCL.exe"'
  2. 安装BlueNRG-1_2 DK
    1. 如果构建项目不起作用,您可能需要使用文件位置更新 settings.json。检查并确保 "bluenrgDkLocation"设置的值是您的 BlueNRG DK 的安装位置。如果不是,请找到它并使用其 lib 文件位置运行 getshort.bat。
      • 例如,我的安装位于C:\Users\<USER>\ST\BlueNRG-1_2 DK 3.2.1\Library所以我的设置看起来像"bluenrgDkLocation": "C:/Users/<USER>/ST/BLUENR~1.1/Library"

你应该完成!

Linux 设置

  1. 在你在VSCode中打开的项目中,打开修改.vscode/settings.json如下:

    1. 在设置中设置工具链的路径"cortex-debug.armToolchainPath",例如: '"cortex-debug.armToolchainPath": "/home/<user>/gcc-arm-none-eabi-10-2020-q4-major/bin",'
    2. 在资源管理器中打开您的 Arm Cortex 调试工具版本的文件位置,然后导航到\lib\gcc\arm-none-eabi并复制该位置的目录名称。
      • 我的完整路径是 /home//gcc-arm-none-eabi-10-2020-q4-major/lib/gcc/arm-none-eabi
      • 我复制的目录名称是 10.2.1
    3. 将设置“armToolchainVersion”替换为您复制的文件名,例如: "armToolchainVersion": "10.2.1",
  2. 安装BlueNRG-1_2 DK

    1. 注册并等待电子邮件下载:(
    2. 使用 innoextract 从 exe 中获取文件
    3. 将 %USERPROFILE/ST/BlueNRG-1_2 DK 3.2.1 复制到您想要的目的地
    4. 使用文件位置更新 settings.json。检查并确保 "bluenrgDkLocation"设置的值是您的 BlueNRG DK 的安装位置,例如: "/home/<user>/BlueNRG-1_2-DK-3.2.1"
  3. 构建并安装 openocd-0.11.0-rc2

    1. 有关说明,请参阅 openocd 自述文件http://openocd.org/doc-release/README
    • 不需要特殊选项,默认值有效

构建和运行示例项目

  1. 按 ctrl+shift+b 构建项目,如果一切都设置好了,就应该构建了!
  2. 导航到左侧的运行菜单并根据您使用的调试设备将调试配置设置为“调试(ST-Link)”或“调试(JLink)”
    • 您还需要使用 SWDIO、SWCLK 和 GND 引脚将调试设备连接到 ST-Link 或 JLink。注意:我不建议使用 3.3V 线为您的 BlueNRG 模块供电,它会导致错误。请使用 1.7 至 3.6 V 之间的外部电源或纽扣电池
  3. 单击运行或按 f5,应弹出调试窗口。请注意,这也会执行 make 任务,因此您无需在每次要构建和上传时按 ctrl+shift+b。要修改此行为,请编辑 .vscode/launch.json 文件
  4. 您应该能够逐步执行您的程序,或者单击继续让它运行。运行时,它应该使 LED 闪烁(我的开发板上的 GPIO_Pin_14)并成为 BLE 信标。您应该能够通过手机上的 BLE 嗅探器看到 BLE 设备

文件位置说明

下面是其中BlueNRG-1 DK是从位置https://www.st.com/content/st_com/en/products/embedded-software/evaluation-tool-software/stsw-bluenrg1-dk.html当你安装这个DK文件的实际位置应该是C:/Users/<your user>/ST/BlueNRG-1_2 DK 3.2.1

来源:https://github.com/calebmarting/BlueNRG-1-VSCode/

源码:

BlueNRG-1-VSCode-main.zip (4.63 MB)
(下载次数: 3, 2021-11-21 18:40 上传)

虾扯蛋,蛋扯虾,虾扯蛋扯虾

回复评论 (2)

虾哥好样的。

使用BlueNRG-1/2/3 的朋友,Keil 可以免费使用。http://www2.keil.com/stmicroelectronics-stm32/mdk#

还有免费的官方基于Eclipse的开发工具。

https://www.st.com/content/st_com/en/products/embedded-software/wireless-connectivity-software/stsw-wise-studio.html

 

点赞  2021-11-22 09:38

感谢分享

点赞  2021-11-22 22:44
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复