一.如何添加全局宏定义

二.将灰色的库文件参与编译

三.配置PRINT函数不加\n和打印浮点

四.解决警告there is a hole的问题

五.解决const变量地址不在codeflash中的问题

六.DEBUG时如何不清空codeflash和dataflash

七.配置V208仿真大于160k的固件

八.MRS快捷键配置

九.MRS如何添加数学库

十.MRS如何同时生成hex和bin

十一.MRS显示FLASH和RAM占用空间

十二.MRS修改工具栏图标大小

 

一.如何添加全局宏定义

正常的添加宏定义只需在文件中使用#define即可,但在很多工程使用一个公共文件的时候,你去修改这个宏定义,就会导致所有工程都会跟着改变,

且新增文件夹时会出现头文件忘记包含,这显然不是我们想要的结果,那么如何添加针对此工程的宏定义呢?可以选择以下任意一种方式配置:

方式1:

方式2:

 

二.将灰色的库文件参与编译

在使用Mounriver编译器打开WCH官方的EVT例程包后,会发现里面的工程StdPeriphDriver文件夹中的诸多没有使用到的外设功能的.c文件是灰色的,

原因便是此文件被排除编译,只需右击此.c文件,选择参与/排除编译(Include/Exclude From Build),使用不到的.c文件也可排除编译,节省资源。

尤其是遇到undefined reference to报错时可重点查下是否是文件没有包含导致。

 

三.配置PRINT函数不加\n和打印浮点

在使用MounRiver打印输出时如果使用默认配置,会发现不加转行符是无法打印输出的,也无法打印输出浮点数,原因便是调用的打印库的问题,解决方法那当然是更改配置啦。

先单击选中工程,点击Build Setting图标:

 

四.解决警告there is a hole的问题

 这个警告产生是因为MRS 删除DEBUG定义导致,要消除警告可以按下图配置:

 

五.解决const变量地址不在codeflash中的问题

 

六.DEBUG时如何不清空codeflash和dataflash

使用WCH-LINK仿真时,默认是清空所有flash的,需要在debug configurations中针对仿真的工程添加配置 -c page_erase ,在运行仿真时不会自动清空flash。

 

七.配置V208仿真大于160k的固件

-c init

-c "wch_riscv unfreeze"

 

 

八.MRS快捷键配置

 

 

九.MRS如何添加数学库

若要使用数学公式,在包含了math.h之后,还需要增加下math库。右键工程名->Properties配置,在下图Libraries中,添加m即可。

 

十.MRS如何同时生成hex和bin

riscv-none-embed-objcopy -O binary  ${ProjName}.elf  123456_${ProjName}.bin

 

 

 

十一.MRS显示FLASH和RAM占用空间

--print-memory-usage

 

十二.MRS修改工具栏图标大小

 

posted on 2023-10-17 14:01  WCH蓝牙应用分享  阅读(271)  评论(0编辑  收藏  举报