MounRiver使用技巧及配置1


使用技巧1

Debug時,看不到外設寄存器選項,如下圖:

原因及方法:未添加SVD文件路徑,需添加SVD文件路徑。CH32V103、CH32V307對應文件路徑如下:

CH32V003:${eclipse_home}template/wizard/WCH/RISC-V/CH32V003/NoneOS/CH32V003xx.svd

CH32V103:${eclipse_home}template/wizard/WCH/RISC-V/CH32V103/NoneOS/CH32V103xx.svd

CH32V203:${eclipse_home}template/wizard/WCH/RISC-V/CH32V203/NoneOS/CH32V203xx.svd

CH32V307:${eclipse_home}template/wizard/WCH/RISC-V/CH32V303/NoneOS/CH32V307xx.svd

添加方法如下:

添加之后如下:

或可直接新建工程,也可以得到該路徑

 

使用技巧2

Debug時,如何更改變量顯示類型

 

修改方法如下:

 

使用技巧3

MRS下載編譯時,更改生成文件是HEX文件還是BIN文件,具體如下:

 

使用技巧4

MRS開發編譯時,如何修改工程優化等級,具體如下:

 

使用技巧5
MRS進行工程編譯時,如何配置FLASH、RAM顯示占比,具體配置如下:

添加 -Wl,--print-memory-usage

 

配置完成后,編譯顯示如下:

關於RAM顯示占比百分之百問題:這是由ld文件的書寫不同導致的,不影響的,data+bss的大小就是實際使用的RAM的大小(一般情況下,以CH32系列為主,其他可能有所區別)。若需要修改顯示,可將ld文件修改下,修改內容如下圖,修改ld文件的同時需要將debug.c文件中的void *_sbrk(ptrdiff_t incr)函數整體注釋掉,此處需要注意,修改過后,動態內存分配超出將不會有提示。

 

使用技巧6

CH32V307是支持硬件浮點的,可以是math.h中的sinf。IQMath主要是為沒有硬件浮點的MCU提供的定點運算庫。如果CH32V307要使用IQMath,需要把f擴展給關閉

CH32V307是支持單精度的浮點,math.h中的不帶f結尾的函數都是double類型的速度很慢。要使用帶f結尾的函數,如:sinf(x),cosf(x).

CH32V307使用IQMath庫時,MounRiver如何配置,如下圖:

首先在main文件中要包含頭文件路徑:#include"IQmath_RV32.h",具體如下圖:

其次要在Extension Library中勾選了“Use iqmath”。

最后,還需將f擴展給關閉,具體如下圖,參考下圖設置,關閉紅框里兩個地方

 

使用技巧7

使用MRS時,當使用到math數學庫時,除了要包含math.h頭文件之外,還要進行如下配置,如下圖:

 

使用技巧8

當需要打印浮點類型時,MRS要進行如下配置,具體如下圖:

 

使用技巧9

當打開工程沒有顯示LD文件時,如何配置LD文件在工程中顯示,具體如下圖。直接在工程文件夾下修改ld文件名稱,將.ld文件名稱重命名為link.ld,然后將ld文件路徑修改

 

使用技巧10

當使用sprintf打印時,如執行sprintf(buf, "%5.1f", fvalue),需進行如下配置:

 關於sprintf函數,其並不是一個打印函數,如下圖,其是將M_PI的值輸出到str所指向的字符串。如果成功,則返回寫入的總字符數,不包括字符串追加在字符串末尾的空字符。如果失敗,則返回一個負數。可使用puts函數輸出該字符串

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM