MRS編譯問題

大家好,請(qǐng)問一下MRS中,有沒有方法不編譯未調(diào)用的函數(shù)和變量,從而節(jié)省flash和ram空間。謝謝!


熱門產(chǎn)品 : USB3.0 HUB控制器:CH634

很多現(xiàn)代編譯器都是這樣的吧,沒有引用到就不會(huì)編譯進(jìn)去。如果你覺得清理的不夠干凈,可以打開-flto(鏈接時(shí)優(yōu)化,Link Time Optimization),鏈接器會(huì)在鏈接過程中檢查未被引用的符號(hào)并移除,但可能會(huì)引起一些其他的潛在問題,如手工重定向了中斷向量表等情況可能會(huì)錯(cuò)誤的移除。


您好,使用MRS開發(fā)時(shí),默認(rèn)都是開啟優(yōu)化的,編譯是都會(huì)編譯的,但在執(zhí)行鏈接時(shí)會(huì)將沒用到的函數(shù)和變量去掉,同樣是可以達(dá)到節(jié)省FLASH和RAM的效果的。


指條路:

-ffunction-sections -fdata-sections
--gc-sections


自己去研究吧


能不能設(shè)置不優(yōu)化:有時(shí)候延時(shí)函數(shù)會(huì)被優(yōu)化的不好



您好,MRS可以設(shè)置不開優(yōu)化,如下圖。關(guān)于延時(shí)函數(shù)會(huì)被優(yōu)化的不好,這個(gè)延時(shí)函數(shù)是指自定義的延時(shí)函數(shù)么。若是指自定義延時(shí)函數(shù)會(huì)被優(yōu)化不起作用,可在for循環(huán)或while循環(huán)中加nop指令,防止被優(yōu)化。若是延時(shí)時(shí)間的一致性問題,可將延時(shí)函數(shù)放在RAM中,具體操作可參考下帖。

https://www.cnblogs.com/liaigu/p/17302175.html?

image.png


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频