沁恒微 RISC-V 芯片开发工具 MounRiver Studio 使用

复制代码
 MounRiver Studio 开发环境的使用简介     ...... 矜辰所致

前言

工欲善其事,必先利其器,在开始学习 沁恒微 RISC-V 芯片之前,我们先来了解一下它的开发工具 MounRiver Studio 。所以本文其实也算比较简单,介绍一下我们要使用的 IDE - MounRiver Studio 。

在CSDN 上,有一个博主专门介绍这个 IDE 的博主,推荐给大家: MounRiver_Studio 博客

我是矜辰所致,全网同名,尽量用心写好每一系列文章,不浮夸,不将就,认真对待学知识的我们,矜辰所致,金石为开!

目录

  • 前言
  • [一、 基础介绍](#一、 基础介绍)
    • [1.1 下载安装](#1.1 下载安装)
    • [1.2 工程创建与编译](#1.2 工程创建与编译)
      • [官方 EVT 包](#官方 EVT 包)
    • [1.3 关于下载](#1.3 关于下载)
  • [二、 常见配置修改(持续更新...)](#二、 常见配置修改(持续更新...))
    • [2.1 打印浮点数](#2.1 打印浮点数)
    • [2.2 配置头文件路径](#2.2 配置头文件路径)
    • [2.3 配置链接文件和库文件](#2.3 配置链接文件和库文件)
    • [2.4 生成Bin文件](#2.4 生成Bin文件)
    • [2.5 修改 DEBUG LOG 串口](#2.5 修改 DEBUG LOG 串口)
  • [三、 蓝牙工程创建示例](#三、 蓝牙工程创建示例)
  • 结语

一、 基础介绍

MounRiver Studio(MRS)基于Eclipse平台开发,支持 RISC-V 和 ARM 内核的微控制器(MCU),提供一站式的嵌入式项目开发、调试、烧录和项目管理等功能。

1.1 下载安装

大家可以自行上官网下载 MounRiver Studio官网 ,安装流程就省略了,傻瓜式安装。

这里需要说明一下的是,工具现在新出了第二代 MounRiver Studio II,相对于第一代来说它将开发框架更换为 VSCode,并深度定制开发,在代码编辑、编译、调试等环节兼容旧版本,同时提升效率与智能化水平。

随便版本不同,但是在一些基本的配置方面,和第一代类似,所以大家在网上查看的一些一代的配置方法,同样适用于第二代。

安装完成以后界面如下:

对于习惯 VScode 的大家,可以修改一下主题,基本上就变成 VScode 编辑器啦:

对了,语言选择在最上面栏目,帮助,语言中勾选:

1.2 工程创建与编译

创建工程步骤,如下图,博主手头有 CH585M 的开发板,所以这里以 CH585 为例:

上面步骤完成来到下面界面,这里我们保持默认,直接点击完成:

完成以后,工程就创建完毕了,示例工程结构如下:

我们直接编译,如下图:

可以看到最后生成了 hex 文件,而且工具很直观的现实出来,我们工程占用了多大的 FLASH 和 RAM 空间,非常的方便。

上面是讲的我们自己新建的工程,对于我们使用官方的 SDK ,每个示例工程都可以直接打开,下面也来介绍一下。

官方 EVT 包

EVT 包,就是官方的 SDK 包,里面有完善的应用示例,文档说明,所有的芯片都可以在官网找到,比如博主用的 CH585 ,直接搜索就能找到,如下图:

下载后,解压出来就是一个 CH585EVT 文件夹,这里我们暂且不讨论里面的格局内容,我们随便打开一个工程,都可以直接打开进入到 MounRiver Studio 界面,如下图:

1.3 关于下载

使用 MounRiver Studio 工具一键下载需要使用 WCH-LinkE工具 , 可以博主手头没有这个工具,但是我们可以使用 ISP 下载烧录(这部分我们后面会单独写一篇文章详细介绍一下 ISP 下载的相关知识。)

所以这里暂时没法介绍 使用 WCH-LinkE 工具的下载。

那对于上面我们新建的测试工程,我们使用 ISP 下载先看一下结果,完成这个示例创建步骤:

基本的使用也就是这么简单,而且对于我们开发者,官方的每个工程基本都已经做好了配置,直接打开 EVT 的示例,都可以直接使用,没有什么特别难以理解的地方。

二、 常见配置修改(持续更新...)

上面介绍了基本的使用,那我们的开发中,难免会遇到一些情况需要特别的修改配置,对于新手而言会比较头疼,所以本小节博主会把一些常见的配置修改罗列出来,方便大家使用。

2.1 打印浮点数

本文虽然是以 MRSII 为例子,但是第一代也是类似的,比如如果工程中要开启浮点数打印,我们的设置方式为,右键工程名字,点击属性:

这里说明一下,后期针对工程的所有配置,都是以这种方式开头,我们后面的说明就会直接省去这一步的说明了。

然后进行如下设置:

那对应的,在第一代中的操作方式如下:

除了界面有一点点区别,然后因为我设置了中文,设置的地方和方法都是一样的,所以在后面的配置介绍中,我只上一个版本的介绍说明。 因为博主使用不同的电脑可能版本不一样,所以后期更新的配置说明不会刻意的保持某一个版本。

更新一下:

2.2 配置头文件路径

配置头文件路径的地方如下:

测试如下,比如我新建了一个自己的文件夹,如下:

没有配置头文件路径会配置失败,我们只要加上路径就可以了:

2.3 配置链接文件和库文件

链接文件

如果不小心移动了链接文件,在此处修改,保证链接文件的路径正确:

库文件

库的添加如下方式,在后面我们需要使用蓝牙库的时候,也会需要再这里包含,官方工程已经包含了,自己独立创建工程需要自己包含:

添加 math 库:

如果想使用 C 语言数学库,除了需要再文件中包含 math.h头文件后,需要增加 math 库,如下图:

2.4 生成Bin文件

默认只生成 hex 文件,需要生成 bin 文件设置如下:

2.5 修改 DEBUG LOG 串口

在官方工程代码中,所有的串口都可以用来做打印输出调试,除了代码中需要初始化不同的IO,还需要在开发环境中设置(DEBUG 的值 0~ 3 对应串口 0~3):

在 MRSII 中对应配置如下:

三、 蓝牙工程创建示例

最后我们来做个示范,把上面我们自己新建的工程变成一个带蓝牙库的蓝牙示例。

我们可以在 EVT 里面找一个工程模板打开,然后对比不同的地方先移动过来:

这一看怎么还少了,点进工程一看才明白:

这是因为新的 EVT 把一些通用的文件,放在一个文件夹里面了,所有的工程共用的,如下图:

那这四个文件通用的,我们新建的工程里面也有,那就不用管,我们再看看其他地方,因为我们在从机工程下面也没有找到库文件,我们根据上面学习过的找到库的位置:

以同样的找不同的方式,我们还需要一个 HAL 文件,如下图:

不同的 EVT 版本可能架构有些不一样,反正大家能够理解需要什么东西,怎么配置就行了。

我们的目的,是在我们自己新建立的工程上面跑起蓝牙,按理来说我们直接修改路径改成 EVT 里面现有的也是可以的,但是为了方便我们自己的工程可以复制,我们把我们没有的东西需要的都复制到我们刚才的示例文件夹中。

先把这 4 个我们没有的文件夹复制到我们自己的工程下面,然后点击重新加载:

可以看到我们的文件夹就出来了,因为 app 就是我们从机工程 main.c 函数的所在,我们原来工程里面的 src 文件夹就可以删除,使用 app 中的,这时候我们肯定是无法成功编译的,我们接下来就得添加头文件路径,然后还要添加库文件。

添加头文件路径,不要忘记点右下角的应用:

根据从机例程添加需要的蓝牙库,不要忘记点右下角的应用:

完成以后,我们尝试编译一下,发现有问题:

这里至少不是找不到文件定义的问题,我们进去看看,发现是由于 IDE 工具自动生成的CH58x_common.h 和最新 EVT 里面的不同,这种问题,我们只需要把最新的 EVT 中的这个文件内容复制一下就好。

最后再来一次 = =!:

对比一下,也是很简单可以找到原因,新的文件比旧的文件多点东西,这种细节也只有在调试的时候才回发现把,哈哈:

这里建议大家把需要的文件都复制一遍,毕竟 MRS 自带的库的更新可能没有 EVT 更新得快,避免某些额外问题。

最后我们成功编译了:

最后测试就是和官方从机效果一致,移植完成。(说明一下,博主因为在边写文章,边修改参数,其实第一次移植也失败了,编译正常,但是程序不运行,也找了许久问题没找到 = =! 所以我自己干脆重新新建了一个工程,按照上面自己写的步骤移植,当然,我有注意,把需要用到的文件,都复制过来,就算是自动生成里面有的那几个:链接文件,启动文件 等等,我也是用的 EVT 里面的,最后一次编译成功测试通过。最后再提一句,强烈建议用最新 EVT 里面的文件! )

结语

本文我们介绍了 MounRiver Studio 开发工具的使用,基本使用还是很简单的,可能就是在某些需要特除配置的时候,因为对工具的不熟悉,需要花点时间,这个是不可避免的,但是在后期的学习使用中,遇到不同的配置需求,博主也回来更新文章,当然,网上也有许多前辈已经记录了很多问题和解决办法,只要能够解决我们开发中的问题就行。

需要说明的是 EVT 版本最一直更新,有时候工程结构会有调整,大家在开发的时候,需要注意一下,只要熟悉了工程配置,再怎么改也可以得心应手!

好了,本文就到这里,谢谢大家!

相关推荐
weixin_4365250717 小时前
Gitee - IDEA 主支 master 和分支 dev 的使用
java·ide·intellij-idea
小蕾Java17 小时前
Java 开发工具,最新2025 IDEA 使用
java·ide·intellij-idea
是席木木啊17 小时前
Idea升级到2024版本:“marketplace plugins are not loaded”解决方案
java·ide·intellij-idea
胚芽鞘68117 小时前
博客标题:解密 IntelliJ IDEA 调试:当你的 List 不仅仅是 List
java·ide·intellij-idea
HezhezhiyuLe17 小时前
IDEA中Add New Configuration找不到Tomcat
java·ide·intellij-idea
宝儿65221 小时前
用vscode做一个简单的扫雷小游戏
ide·vscode·编辑器
Terio_my1 天前
IDEA自动构建与热部署配置
java·ide·intellij-idea
小蕾Java2 天前
PyCharm保姆级详细使用手册(Python新手快速上手篇)
ide·python·pycharm
xuegao08072 天前
WSL安装并配置到pyCharm
ide·python·pycharm