我想用CH32V203G6U6弄個bootloader。由于這顆料flash只有32k,所以想最大程度壓縮boot程序flash使用量,在編譯器選項中用了?optimize?size ,還是不能滿足要求,于是試了一下編譯器的其它選項,當把?link-time?optimizer?選中后,編譯后的flash大小相比以前就下降了16%,但是把程序下載到單片機后,程序無法正常運行(源碼沒有改變,在未選?link-time?optimizer時是能正常運行的),請幫忙看一下,還能用什么方法來壓縮flash使用量,謝謝!?
查看: 2446
回復(fù): 1
ch32 編譯選項
熱門產(chǎn)品 :
CH339: 7端口多功能USB HUB控制器芯片
您好,減少代碼尺寸可從以下幾方面入手:
1、可啟用(-msave-restore)優(yōu)化;
2、使用wch提供的打印庫,或在最后版本的工程中去掉所有打印調(diào)試;
3、如果是V4的內(nèi)核,可以在前面的基礎(chǔ)上使用我們自定義擴展壓縮指令;
4、除了以上可以較明顯的改變代碼外,多使用結(jié)構(gòu)體指針,減少傳入?yún)?shù)的個數(shù)等也可以帶來一定的尺寸上的優(yōu)化。
ps:
–flto選項
開啟后,將在編譯的中間二進制文件中保存額外信息,使得連接時進行更全面的優(yōu)化。但是開啟此選項后有可能會優(yōu)化過度引起一些未知的錯誤。
請勿發(fā)布廣告和違法內(nèi)容, 代碼可以選擇編輯器代碼語言格式, 更易他人閱讀幫助您, 或者留下聯(lián)系方式,以便更好更快服務(wù)您
只有登錄才能回復(fù),可以選擇微信賬號登錄