![]() |
發(fā)布時間: 2024-4-25 20:33
正文摘要:linking. WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESSLSEGMENT: ?CO?MAIN |
注釋未調(diào)用代碼 |
未用到的數(shù)據(jù)段,或子程序代碼在c51 keil里面, 編譯時就有提示警告. 可以刪除縮減編譯后的代碼大小 |
找到原因了,開始定義了一個code的數(shù)組 uchar code ksmz[3] = {0xef,0xfd,0xfe,}; 沒有使用,后來用了這種 keysm++;if(keysm>4)keysm = 1; key_h1 = 1;key_h2 = 1;key_h3 = 1;key_h4 = 1; switch(keysm){ case 1: key_h1 = 0; break; case 2: key_h2 = 0; break; case 3: key_h3 = 0; break; case 4: key_h4 = 0; break; default: break; } 就遺忘了,不好意思。 |
main.c中的函數(shù)co()未被調(diào)用,有編寫這個函數(shù)嗎 |
警告 代碼里 按鍵服務函數(shù) 定義了,卻未被調(diào)用,可以把未調(diào)用函數(shù)注釋掉 |
而且編譯結果是可以正常使用的。 |
Hephaestus 發(fā)表于 2024-4-25 22:56 沒有啊,沒改那個啊,而且編譯結果也能使用的,這次主要是原來的舊板子的9鍵是9個io驅動的,現(xiàn)在要改成12鍵,所以就把10個鍵用3*4掃描了,其余的兩個還是直接用io。是添加了模塊,這樣就不需要改動原來的按鍵服務了。也沒注意是啥時候出這個的,把備份的之前工程編譯,就沒有這個提示。 |
應該是你瞎改startup.a51導致main函數(shù)都被省略掉了。 |
Powered by 單片機教程網(wǎng)