使用 VSCode+CMake+Ninja 开发RISC-V MCU

发布时间 2023-11-09 14:58:44作者: Wahahahehehe

1. 安装软件及工具

1.1 VSCode 安装

Visual Studion Code (VS Code),是一款由微软开发且跨平台的免费源代码编辑器。该软件支持语法高亮、代码自动补全(又称 IntelliSense)、代码重构、查看定义功能,并且内置了命令行工具和 Git 版本控制系统。

官网下载,按照提示安装即可。

1.2 CMake 安装

CMake主要是编写CMakeLists.txt文件,然后用cmake命令将CMakeLists.txt文件转化为make所需要的makefile文件,最后用make命令编译源码生成可执行程序或共享库(so(shared object)),即CMake 是一款自动生成Makefile的工具。

下载官网最新版本,通常Windows 64位下载版本如下图所示:

image

Cmake安装步骤如下:

双击下载的安装包,开始安装。

  • step1,进入安装界面

image

  • step2,同意license

image

  • step3,将CMake添加到系统环境变量(非常重要)

image

  • step4,选择安装路径

image

  • step5,开始安装

image

  • step6,输入 cmake -version 检查是否安装完成,如果能正常显示出版本号,即表示安装完成;如不能显示,可手动添加CMake至系统环境变量。

image

1.3 Ninja 安装

Ninja 是Google的一名程序员推出的注重速度的构建工具,一般在Unix/Linux上的程序通过make/makefile来构建编译,而Ninja通过将编译任务并行组织,大大提高了构建速度。

下载最新的Ninja版本:https://github.com/ninja-build/ninja/releases

image

下载好windows系统下的安装包,解压后放到自定义的位置,然后添加对应的系统环境变量。

image

image

完成后,输入 ninja --version ,提示对应的 ninja 版本号,则表示添加成功。

image

1.4 Mounriver Studio 安装

只是为了安装沁恒 RISC-V GCC 和 openocd,以及wch-Linke驱动,自行操作,不做讲解。

2. demo工程

下载链接: https://github.com/Taoyukai/wch_risc-v_mcu_cmake_template

3. 操作说明

  1. 修改CMakeLists.txt 文件中的工具链路径
# 工具链设置
set(TOOLPATH  "D:/MounRiver/MounRiver_Studio/toolchain/RISC-V Embedded GCC12/bin/riscv-none-elf-")

3.1 编译工程

新建一个Terminal, 输入 ./build 进行编译

image

编译完成后,后面方可用快捷键 F7 编译。

3.2 通过openocd+wch-link下载程序

openocd 在 .vscode/tasks.json 文件中进行配置,(进行工程移植时,需要修改对应的hex文件名)。

需要将openocd添加到系统环境变量中。

{
	"version": "2.0.0",
	"tasks": [
		{
			"label": "flash",
			"type": "shell",
			"command": "openocd -f ./tools/wch-interface.cfg -f ./tools/wch-target.cfg -c init -c halt  -c 'program ./build/ch32v307_cmake_demo.hex verify'  -c reset -c wlink_reset_resume -c exit  ",
			"problemMatcher": [],
		},
	]
}

连接好wch-Link和CH32V307开发板后,通过 VScode菜单栏 Terminal -> Run Task -> flash 进行下载。

也可将flash这个 Task 绑定快捷键,方便调用。