新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > pic單片機(jī)編譯錯(cuò)誤匯總

pic單片機(jī)編譯錯(cuò)誤匯總

作者: 時(shí)間:2016-11-27 來源:網(wǎng)絡(luò) 收藏
一、Error[000] : Cant find 0x12C words for psect rbss_1 in segment BANK1

  連接器告訴你總共有0x12C(300)個(gè)字節(jié)準(zhǔn)備放到bank1 中但bank1 容量不夠。顯然,只有把一部分原本定位在bank1 中的變量改放到其它bank 中才能解決此問題。

本文引用地址:http://m.butianyuan.cn/article/201611/322121.htm

二、 Error[000] :Fixup overflow in expression_r(...)

   Error [477] ; .fixup overflow in expression_r(location 0x1FEE (0x1FE6+8), size 2, value 0xFF5)

既然定義的指針有明確的bank 適用區(qū)域,在對(duì)指針變量賦值時(shí)就必須實(shí)現(xiàn)類型匹配,下面的指針賦值將產(chǎn)生一個(gè)致命錯(cuò)誤:

  unsigned char *ptr0; //定義指向bank0/1 的指針

  bank2 unsigned char buff[8]; //定義bank2 中的一個(gè)緩沖區(qū)

程序語句:ptr0 = buff; //錯(cuò)誤!試圖將bank2 內(nèi)的變量地址賦給指向bank0/1 的指針,如果你看到了“Fixup overflow”的錯(cuò)誤指示,請(qǐng)重點(diǎn)檢查程序中有關(guān)指針的操作。

如果總程序仍超過一頁,則可能會(huì)有以上錯(cuò)誤,檢查程序是否超頁:

三、 Error[000] : Cant find 0x26 words (0x26 withtotal) for psect text13 in segment CODE

  Error[000] : Cant find 0xC words (0xC withtotal) for psect text in segment CODE

  Error[000] : Cant find 0xC words (0xC withtotal) for psect text4 in segment CODE

  常見的情況是編譯的內(nèi)容超出芯片ROM空間,可屏蔽部分代碼,以檢查代碼量是否過多。

四、 Error[000] D:Workstandard_emo.c 113 : probable missing } in previous block

   Error[000] D:Workstandard_emo.c 8 : { expected

  程序中大括號(hào)不完整,檢查{}是否完整成對(duì)使用。

五、Error[000] D:Workstandardemo.c 8 : ; expected   

 程序代碼后缺少“;”號(hào)。

六、 Error[000] D:Workstandardemo.c 10 : undefined identifier: buzz1

  變量buzz1未定義就使用,變量應(yīng)先定義后使用。

七、 Error[000] D:Workstandardemo.c 80 : inappropriate else

  If,else語句未成對(duì)使用,缺少if條件,提示不對(duì)稱的else。

八、Error[000] : undefined symbols:

  Error[000] : _chipsel (D:Workstandardmini.obj)

未定義的標(biāo)簽,確認(rèn)子程序chipsel()等是否可以被調(diào)用,檢查是否在INCLUDE中,是否在調(diào)用前進(jìn)行了函數(shù)原型聲明。

九、Error[000] D:Workstandardmini.c 19 : Cannot open include file "I2C.c1"

 包含的文件名錯(cuò)誤,檢查包含的文件和原文件的命名是否相同。

十、Error[000] :function _EQ_DATA_SEND appears in multiple call graphs: rooted at _isr and _main (error)

函數(shù)EQ_DATA_SEND在主程序和中斷程序中均被調(diào)用,有可能該函數(shù)在被主程序調(diào)用執(zhí)行的過程中又被中斷程序調(diào)用。這樣就破壞了正在執(zhí)行過程的數(shù)據(jù),造成不可預(yù)料的結(jié)果,因此不能這樣。可以寫成兩個(gè)不同命名的函數(shù)分別調(diào)用。

十一、Error[000] : This demo compiler has expired.Contact HI-TECH software to purchase and re-activate this compiler

演示版的編譯器壽終正寢了,把編譯器卸載了重新安裝激活吧



評(píng)論


技術(shù)專區(qū)

關(guān)閉