針對瑞薩的RL78產品系列,主要使用的開發環境有CS+ FOR CA、CS+ FOR CC、e2 Studio。今天主要介紹下CS+ FOR CC對于未使用的函數的處理。
MCU的程序空間是很重要的資源,需要多方面考慮。在CS+ FOR CC的開發環境中,對于未使用的函數,編譯默認是占用了程序空間的,如下圖:

其中void Delay222(void) 這個函數是沒有被調用的,通過編譯生成的map文件可以看出還是分配了空間,R_main函數總占用0x21D字節空間,_Delay和_Delay222各占用0xA字節空間;

當然,對于出現這個問題,我們可以將不使用的函數注釋或者刪除掉,這里介紹另外一個方法來解決這個問題,需要按照如下3個步驟進行配置:
1
將Link Options---Output Code ---Specify execution start address按照下圖修改:
修改前:

修改后:

2
將Compile options---Optimization(Details)---Output additional information for inter-module按照下圖修改:
修改前:

修改后:

3
將Link options---Optimization---Optimization type按照下圖修改:
修改前:

修改后:

通過進行如上的設置,重新編譯再次查看map文件,r_main函數占用的總空間為0x20F字節空間,其中void Delay222(void)已經沒有了(可以對照前面第二張圖看),只看到已調用的_Delay函數分配的空間0x0A字節空間。

更多內容請掃描下方二維碼查看:

1
END
1
往期推薦
1
RX24T電機驅動配置:單電阻采樣(上)
2
基于RL78-FDL庫實現RL78G13 Data Flash的讀寫操作
3
RX24T電機驅動配置:3電阻采樣(上)
瑞薩電子 (TSE: 6723)
科技讓生活更輕松,致力于打造更安全、更智能、可持續發展的未來。作為全球微控制器供應商,瑞薩電子融合了在嵌入式處理、模擬、電源及連接方面的專業知識,提供完整的半導體解決方案。成功產品組合加速汽車、工業、基礎設施及物聯網應用上市,賦能數十億聯網智能設備改善人們的工作和生活方式。
原文標題:CS+ for CC對于未使用的函數的處理
文章出處:【微信公眾號:瑞薩MCU小百科】歡迎添加關注!文章轉載請注明出處。
-
mcu
+關注
關注
146文章
17408瀏覽量
353431 -
瑞薩
+關注
關注
36文章
22318瀏覽量
87009
原文標題:CS+ for CC對于未使用的函數的處理
文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
C語言如何處理函數的返回值
ADS1204剩余未使用的通道,輸入引腳需要做處理么?
SUMIF函數在數據分析中的應用
面試常考+1:函數指針與指針函數、數組指針與指針數組

評論