標(biāo)題: Keil MDK5編譯出錯(cuò)的疑問 [打印本頁]

作者: 溫柔的郎    時(shí)間: 2022-1-10 12:08
標(biāo)題: Keil MDK5編譯出錯(cuò)的疑問
各位大神,我在用STC8A8K的開發(fā)板,編譯后老是出錯(cuò),不知哪里的問題啊,請(qǐng)有明白的大神指導(dǎo)指導(dǎo),不勝感謝。。
我在給STC8A8K的LED燈PWM程序添加個(gè)OLED功能,源程序僅僅是PWM功能,編譯正確,下載沒問題,如下圖


下來我增加了OLED文件,但并未增加oled.c文件,此時(shí)編譯,依然正確,如下圖


接下來增加oled.c文件,此時(shí)編譯就錯(cuò)誤了,如下圖


軟件注C破J情況,如下圖


有網(wǎng)友說編譯提示時(shí)說軟件沒有p解,受代碼數(shù)量限制,可我這也p解了啊,還是編譯不了,哪里的問題啊,
請(qǐng)有知道的大神指導(dǎo)指導(dǎo),感謝感謝!


作者: 3125311919    時(shí)間: 2022-1-10 13:18
這個(gè)需要看你編譯對(duì)話框里面給提示的信息   有可能是添加新的模塊后 檢查出語法或頭文件方面的錯(cuò)誤
作者: AAA_MCU    時(shí)間: 2022-1-10 15:19
添加你的.c文件的時(shí)候文件類型勾選.c或者All File,你是弄成Image File了

作者: 溫柔的郎    時(shí)間: 2022-1-10 16:36

各位大神,添加的時(shí)候自動(dòng)選擇oled.c文件了,選其他的,不行,添加不進(jìn)去的啊,但選擇oled.c文件后,編譯就報(bào)錯(cuò)了




作者: 123456ZXC1    時(shí)間: 2022-1-10 18:16
看看上面報(bào)錯(cuò)信息啊  我嚴(yán)重懷疑不是地址問題就是.h文件問題
作者: wufa1986    時(shí)間: 2022-1-11 10:05
你的保證文件是正確的,里面有些函數(shù)你根本沒有,怎么編譯
作者: datouyuan    時(shí)間: 2022-1-11 13:46
編譯信息不是只有4行,上面還有。你要報(bào)所有編譯信息發(fā)出,我們才好幫你解決。
作者: 530378687    時(shí)間: 2022-1-11 16:28
報(bào)錯(cuò)的OLED.C文件里,oled_init函數(shù)沒有定義吧
作者: 溫柔的郎    時(shí)間: 2022-1-12 09:06
各位大神,我補(bǔ)充說下,我先在一個(gè)LED點(diǎn)燈的程序里,增加了OLED顯示程序,編譯,下載都沒問題,然后用同樣的方法,同樣的OLED程序,又在PWM程序里增加OLED程序就不行,過程就是上面發(fā)的那樣,OLED程序確定好的,其他地方已經(jīng)oled已經(jīng)正常顯示了,
作者: datouyuan    時(shí)間: 2022-1-12 09:11
本帖最后由 datouyuan 于 2022-1-12 09:20 編輯
溫柔的郎 發(fā)表于 2022-1-12 09:06
各位大神,我補(bǔ)充說下,我先在一個(gè)LED點(diǎn)燈的程序里,增加了OLED顯示程序,編譯,下載都沒問題,然后用同樣 ...

你應(yīng)該把編譯的所有信息發(fā)出,不是僅僅最后面4行。
你反復(fù)說明的那些信息不重要,要點(diǎn)是編譯信息。你看下圖,就是正確的編譯信息也不只4行。




作者: cheney03    時(shí)間: 2022-1-12 09:25
main.c中沒有包含OLED的頭文件
作者: 溫柔的郎    時(shí)間: 2022-1-12 09:45
添加oled.h文件后編譯下,在main,c里就會(huì)有了,但還是報(bào)錯(cuò)的
如下圖


編譯的全部提示信息



作者: 溫柔的郎    時(shí)間: 2022-1-12 09:47
這是源程序
有懂的大神麻煩指導(dǎo)指導(dǎo)啊,感謝。
PWM呼吸燈1.rar (61.08 KB, 下載次數(shù): 3)


作者: wojiaoguogai    時(shí)間: 2022-1-12 09:51
1.oled.c  157行不可達(dá)
2._DELAY_MS 重復(fù)初始化

你這代碼是網(wǎng)上copy的吧
作者: datouyuan    時(shí)間: 2022-1-12 09:56
錯(cuò)誤信息只有一個(gè)
有多個(gè)delay_ms(不區(qū)分大小寫),你只要解決這個(gè)錯(cuò)誤就可以編譯ok了?赏ㄟ^查找解決,如下圖



作者: cheney03    時(shí)間: 2022-1-12 10:10
delay_ms()函數(shù) 重復(fù)定義,注釋掉一個(gè)就可以了。

51hei截圖20220112100747.png (223.62 KB, 下載次數(shù): 52)

51hei截圖20220112100747.png

作者: cheney03    時(shí)間: 2022-1-12 10:14
cheney03 發(fā)表于 2022-1-12 10:10
delay_ms()函數(shù) 重復(fù)定義,注釋掉一個(gè)就可以了。

無報(bào)錯(cuò)

51hei截圖20220112101333.png (114.85 KB, 下載次數(shù): 54)

51hei截圖20220112101333.png

作者: cheney03    時(shí)間: 2022-1-12 10:17
cheney03 發(fā)表于 2022-1-12 10:14
無報(bào)錯(cuò)

同樣,把沒用到的函數(shù)先注釋,就不會(huì)有警告了
作者: 溫柔的郎    時(shí)間: 2022-1-12 10:29
感謝大神們不嘲笑我小白的耐心指導(dǎo)!我剛自學(xué)這個(gè)STC8,買了個(gè)開發(fā)板,人家簡單配套了幾個(gè)程序,想學(xué)習(xí)慢慢增加幾個(gè)功能,源程序只有PWM,我想增加給OLED,可以顯示變化的值,
再次感謝老師們的解釋和指導(dǎo)!
作者: 溫柔的郎    時(shí)間: 2022-1-12 10:35
感謝老師們的指導(dǎo),我按指導(dǎo)修改了1給的事情的名稱后編譯通過了,
想當(dāng)年沒學(xué)好鷹文,限制也看不太懂鷹文提示啊,
再次感謝老師們的指導(dǎo),下次移植或者增添功能,得注意這些了,






歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1