增加 VSCode ARM 插件及 CMSIS Toolbox 的使用。
Signed-off-by: rick.chan <cy@haoan119.com>
This commit is contained in:
parent
4ee5b9bbc3
commit
4778bf78bd
103
Software/Applications/VSCode/VSCode_ARM_插件及_CMSIS_Toolbox_的使用.md
Normal file
103
Software/Applications/VSCode/VSCode_ARM_插件及_CMSIS_Toolbox_的使用.md
Normal file
@ -0,0 +1,103 @@
|
||||
# VSCode ARM 插件及 CMSIS Toolbox 的使用
|
||||
|
||||
- [VSCode ARM 插件及 CMSIS Toolbox 的使用](#vscode-arm-插件及-cmsis-toolbox-的使用)
|
||||
- [1. CMSIS Toolbox](#1-cmsis-toolbox)
|
||||
- [1.1. 包管理器](#11-包管理器)
|
||||
- [2. VSCode ARM 插件配置](#2-vscode-arm-插件配置)
|
||||
- [2.1. VSCode ARM 插件工具安装目录](#21-vscode-arm-插件工具安装目录)
|
||||
- [2.2. Amm Tools Environment](#22-amm-tools-environment)
|
||||
- [3. 创建解决方案](#3-创建解决方案)
|
||||
- [3.1. 设备配置](#31-设备配置)
|
||||
|
||||
VSCode ARM 插件主要包含:
|
||||
|
||||
- Arm Keil Studio Pack (MDK v6)
|
||||
- Arm CMSIS Solution
|
||||
- Arm Debugger
|
||||
- Arm Device Manager
|
||||
- Arm Tools Environment Manager
|
||||
- Arm Virtual Hardware
|
||||
|
||||
## 1. CMSIS Toolbox
|
||||
|
||||
### 1.1. 包管理器
|
||||
|
||||
Arm CMSIS Solution 会自动安装 [CMSIS Toolbox](https://github.com/Open-CMSIS-Pack/cmsis-toolbox),安装目录见 [2.1. VSCode ARM 插件工具安装目录](#21-vscode-arm-插件工具安装目录)。安装完工具后将对应的 bin 目录加入系统 PATH。然后设置 pack 包下载链接和安装目录(默认安装 ROOT 目录在:C:\Users\\<User Name\>\AppData\Local\Arm\Packs 下):
|
||||
|
||||
```bash
|
||||
# 不需要额外指定 CMSIS Root 的可不用 --pack-root 参数。
|
||||
cpackget init --pack-root /Path/to/CMSIS/Root/ https://www.keil.com/pack/index.pidx
|
||||
```
|
||||
|
||||
安装必要的 pack 包:
|
||||
|
||||
```bash
|
||||
# 从网络安装
|
||||
cpackget add ARM::CMSIS
|
||||
# 从本地安装
|
||||
cpackget add ./NSING.N32L40x_DFP.1.0.2.pack
|
||||
```
|
||||
|
||||
一些国产芯片的 pack 包不是很标准,容易安装不上,比如提示缺少 release tag 等,是因为 pack 包中的 pdsc 文件不够标准。可以以 zip 方式解压 pack 包后,参考 [Open-CMSIS-Pack](https://open-cmsis-pack.github.io/Open-CMSIS-Pack-Spec/main/html/createPackPublish.html) 来修改和补全 pdsc 信息。比如在 release 中增加 tag 信息:
|
||||
|
||||
```xml
|
||||
<releases>
|
||||
<release version="1.0.0" tag="v1.0.0" date="2024-08-22" url="https://github.com/orgname/name1/releases/download/v1.0.0/orgname.name1.1.0.0.pack">Initial release</release>
|
||||
</releases>
|
||||
```
|
||||
|
||||
可使用 cpackget list 查看已安装 pack 包,或使用 cpackget rm 命令删除已安装包。
|
||||
|
||||
如果 pack 包无法下载安装,则可以到 <https://www.keil.arm.com/packs/> 进行检索并手动下载,然后在本地安装。
|
||||
|
||||
如果安装 pack 包时需要同意 license 则按 “a” 键即可。
|
||||
|
||||
下边使用 VSCode ARM 插件进行 Build,但是这里先提供一份[使用 CMSIS Toolbox 命令 Build 的说明文档](https://github.com/Open-CMSIS-Pack/cmsis-toolbox/blob/main/docs/build-overview.md#linker-script-management)。
|
||||
|
||||
## 2. VSCode ARM 插件配置
|
||||
|
||||
### 2.1. VSCode ARM 插件工具安装目录
|
||||
|
||||
VSCode ARM 插件下载和安装的工具包在 C:\Users\\<User Name\>\.vcpkg 目录下。
|
||||
|
||||
### 2.2. Amm Tools Environment
|
||||
|
||||
使用 VSCode 的 “Arm Tools: Configure Amm Tools Environment” 配置 Arm CMSIS-Toolbox、Arm Compiler for Embedded、Arm Debugger、Arm MDK-Toolbox 或 GCC compiler for ARM CPUs 等信息(主要是配置版本,缺少组件时会自动安装)。
|
||||
|
||||
## 3. 创建解决方案
|
||||
|
||||
安装好后台工具和插件后,在 VSCode 中输入命令(Ctrl+Shift+P):“CMSIS: Create a Solution”,然后根据提示设置 Target Board 或 Target Device,输入项目及解决方案名称,设定编译器。
|
||||
|
||||
Create 项目解决方案以后,在 VSCode 状态栏可能会出现红色错误提示:
|
||||
|
||||

|
||||
|
||||
如上图,删除 Project.cproject.yml 中的 Device:Startup:
|
||||
|
||||
```yml
|
||||
# A project translates into one executable or library.
|
||||
project:
|
||||
|
||||
groups:
|
||||
- group: Source Files
|
||||
files:
|
||||
- file: ./main.c
|
||||
|
||||
# List components to use for your application.
|
||||
# A software component is a re-usable unit that may be configurable.
|
||||
components:
|
||||
- component: ARM::CMSIS:CORE
|
||||
- component: Device:Startup # <- 删除这一行
|
||||
```
|
||||
|
||||
然后安装对应芯片的 pack 包(这里是 Keil.STM32H7xx_DFP.2.3.1.pack),关闭解决方案后重新打开,错误将消失。
|
||||
|
||||
此时使用 VSCode 的 “CMSlS: Manage software components” 能正确查看到 pack 包信息。
|
||||
|
||||

|
||||
|
||||
### 3.1. 设备配置
|
||||
|
||||
VSCode 安装 Arm CMSIS 插件后也可是使用类似 Keil MDK 的设备配置向导。使用右键单击对应的设备配置文件,选择 “CMSlS Configuration wizard” 即可:
|
||||
|
||||

|
Binary file not shown.
After Width: | Height: | Size: 26 KiB |
Binary file not shown.
After Width: | Height: | Size: 62 KiB |
Binary file not shown.
After Width: | Height: | Size: 197 KiB |
Loading…
x
Reference in New Issue
Block a user