免费可商用的 Cortex-M 开发环境


Cortex-M 开发通常使用 Keil、IAR 等商业软件,这些软件有的提供了面向个人用途的免费版本,但商业用途无一例外需要花高价购买相应的许可证。

得益于日益完善的开源社区,目前可以使用社区维护的工具替代这些商业软件,搭建免费可商用的 Cortex-M 开发环境。

依赖项

工具链

从 Arm Compiler 迁移至 Arm GNU Toolchain

Arm Compiler 与 Arm GNU Toolchain 所需的 MCU 启动文件 Startup.s 语法不同,且 Arm GNU Toolchain 需要链接脚本 .ld;通常需要自己编写。

Arm Compiler 的结构
Arm GNU Toolchain 的结构

配置 pyOCD

下载 Open CMSIS Pack

pyocd pack install yourtarget

配置 Cortex-Debug

VS Code 编辑 launch.json

{
    "configurations": [
        {
            "cwd": "${workspaceFolder}",
            "targetId": "yourtarget",
            "executable": "path/to/elf",
            "name": "Debug with PyOCD",
            "request": "launch",
            "type": "cortex-debug",
            "runToEntryPoint": "main",
            "showDevDebugOutput": "none",
            "servertype": "pyocd",
            "svdPath": "path/to/svd",
            "deviceName": "yourtarget"
        }
    ]
}