一、创建VSCode工作区
1.1、打开vscode,点击文件
,点击打开文件夹...
,选择keil工程根目录。
1.2、在工程根目录下创建.vscode
文件夹,用以存放与vscode相关的文件。
1.3、点击文件
,点击将工作区另存为...
,设置工作区名称,并将文件存放在。vscode
文件夹下。
二、创建批处理命令文件
2.1、在.vscode
文件夹下新建bat文件。文件名可以随便取,我设置的是rebuild_project.bat
2.2、编写批处理命令。
@echo off ::命令不显示
set UV=D:\Keil_v5\UV4\UV4.exe ::keil应用程序的完整路径
set pra=%1 ::传入第一个参数,-b表示编译,其他表示下载
set UV_PRO_PATH=%2.\429.uvprojx ::传入第二个参数,工程的完整路径
if %pra% == -b ( ::根据输入参数进行动态输出提示信息
echo Init building ...
)else (
echo init Download ...
)
echo .>build_log.txt ::创建中间文件并清空内容
"%UV%" -j0 %pra% "%UV_PRO_PATH%" -o build_log.txt
::使用命令行进行相应的操作,并将操作日志保存在中间文件中
type build_log.txt ::显示中间文件内容
echo Done. ::显示处理结束
del build_log.txt ::删除中间文件
exit
三、创建vscode任务
3.1、点击终端
,点击配置任务
,然后选择从模板创建任务.json文件
,在弹出的选取器中选择其他
。
3.2、在弹出的tasks.json文件中添加内容。
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"options": {
"cwd": "${workspaceRoot}/keil",
},
"tasks": [
{
"label": "build project", //任务名
"type": "shell", //任务类型
"group": {
"kind": "test",
"isDefault": true
},
"windows": {
"command": "${workspaceRoot}/.vscode/rebuild_project.bat", //步骤二创建的批处理文件
"args": [
"-b", //编译工程选项
"${workspaceRoot}/keil/" //文件路径
]
},
"presentation": {
"showReuseMessage": false,
"clear": true,//运行前清空终端内同
"reveal": "always",//总是在执行任务时显示终端
"panel": "shared",
"echo": true
},
"problemMatcher": {//keil编译问题匹配
"owner": "echo",
"fileLocation": [
"relative",
"${workspaceFolder}/keil"
],
"pattern": [
{//输出报警或错误的匹配正则表达式
"regexp": "^(\\..+)\\((\\d+)\\): (error|warning):(.*)",
"file": 1,//匹配元素1为文件名称
"location": 2,//匹配元素2为出现问题的位置
"severity": 3,//匹配元素3为出现问题的等级
"message": 4//匹配元素4为出现问题的说明
}
]
}
},
{
"label": "download project",
"type": "shell",
"group": {
"kind": "build",
"isDefault": true
},
"windows": {
"command": "${workspaceRoot}/.vscode/rebuild_project.bat",
"args": [
"-f",
"${workspaceRoot}/keil/"
]
},
"presentation": {
"showReuseMessage": false,
"clear": true,
"reveal": "always",
"panel": "shared"
},
"problemMatcher": {
"owner": "echo",
"fileLocation": [
"relative",
"${workspaceFolder}/keil"
],
"pattern": [
{
"regexp": "^(\\..+)\\((\\d+)\\): (error|warning):(.*)",
"file": 1,
"location": 2,
"severity": 3,
"message": 4
}
]
}
}
]
}
3.3、点击终端
,点击运行任务
,选择对应的任务名称,然后就能编译程序。