借CSDN上一位大哥的回復
***WARNINGL16:UNCALLEDSEGMENT,IGNOREDFOROVERLAYPROCESS
SEGMENT:?PR?_COMPARE?TESTLCD
說明:程序中有些函數(shù)例如COMPARE(或片段)以前(調(diào)試過程中)從未被調(diào)用過,或者根本沒
有調(diào)用它的語句。
這條警告信息前應該還有一條信息指示出是哪個函數(shù)導致了這一問題。只要做點簡單的調(diào)整就
可以。不理它也沒什么大不了的。但是,我們知道,即使沒有調(diào)用這個函數(shù),Keil仍然把它編譯連接進整個程序,不過浪費點ROM倒是不心疼。最主要的是,在這個函數(shù)中的變量,不會被列入覆蓋分析范圍內(nèi),也就是說這些變量占的空間不能被回收,這對于為數(shù)不多的RAM資源可是巨大的浪費啊。。。
解決方法:
(1)刪除或注釋掉COMPARE()函數(shù)
(2)或利用條件編譯#if…..#endif,可保留該函數(shù)并不編譯。
如果你一定要考慮可移植性的話,就這樣做,否則還是采取方法(1)
(3)想不顯示這些提示:則可設置如下:
option for target
--->bl51 misc
--->disable warning ==這里寫入16 |