keil 中常見的幾種警告

2020-12-25 電子產品世界

  keil中常見的幾種警告,固然,相對於錯誤的,警告的程度不及錯誤的嚴重性,有時候忽略,會出現意想不到的錯誤。先看看常見的幾種錯誤,分析出來現的原因。

本文引用地址:http://www.eepw.com.cn/article/201609/296870.htm

  1. Warning 280:』i』:unreferenced local variable

  說明 局部變量 i 在函數中未作任何的存取操作

  解決方法 消除函數中 i變量的宣告

  2 Warning 206:』Music3』:missing function-prototype

  說明 Music3( )函數未作宣告 或未作外部宣告 所以無法給其他函數調用

  解決方法 將敘述void Music3(void)寫在程序的最前端作宣告 如果是其他文件的函數則要寫成 extern void Music3(void),即作外部宣告

  3 Compling :C:\8051\MANN.C

  Error:318:can’t open file 『beep.h』

  說明 在編譯 C:\8051\MANN.C 程序過程中 由於 main.c 用了指令#include 「beep.h」,但卻找不到所致

  解決方法 編寫一個 beep.h 的包含檔並存入到 c:\8051 的工作目錄中

  4 Compling:C:\8051\LED.C

  Error 237:』LedOn』:function already has a body

  說明 LedOn( )函數名稱重複定義 即有兩個以上一樣的函數名稱

  解決方法 修正其中的一個函數名稱 使得函數名稱都是獨立的

  5 ***WARNING 16:UNCALLED SEGMENT,IGNORED FOR OVERLAY PROCESS

  SEGMENT: ?PR?_DELAYX1MS?DELAY

  說明 DelayX1ms( )函數未被其它函數調用 也會佔用程序記憶體空間

  解決方法 去掉 DelayX1ms( )函數 或利用條件編譯#if …..#endif,可保留該函數並不編譯

  6 ***WARNING 6 :XDATA SPACE MEMORY OVERLAP

  FROM : 0025H

  TO: 0025H

  說明 外部資料ROM 的 0025H重複定義地址

  解決方法 外部資料 ROM的定義如下

  Pdata unsigned char XFR_ADC _at_0x25 其中 XFR_ADC 變量的名稱為0x25,請檢查是否有其它的變量名稱也是定義在 0x25 處並修正它

  7 WARNING 206:』DelayX1ms』: missing function-prototype

  C:\8051\INPUT.C

  Error 267 :』DelayX1ms 『:requires ANSI-style prototype C:\8051\INPUT.C

  說明 程序中有調用DelayX1ms 函數 但該函數沒定義 即未編寫程序內容或函數已定義但未作宣告

  解決方法 編寫 DelayX1ms 的內容 編寫完後也要作宣告或作外部宣告 可在 delay.h的包含檔宣告成外部 以便其它函數調用

  8 ***WARNING 1:UNRESOLVED EXTERNAL SYMBOL

  SYMBOL:MUSIC3

  MODULE:C:\8051\MUSIC.OBJ(MUSIC)

  ***WARNING 2:REFERENCE MADE TO UNRESOLVED EXTERNAL

  SYMBOL:MUSIC3

  MODULE:C:\8051\MUSIC.OBJ(MUSIC)

  ADDRESS:0018H

  說明 程序中有調用 MUSIC 函數 但未將該函數的含擴檔 C 加入到工程檔Prj 作編譯和連接

  解決方法 設 MUSIC3 函數在 MUSIC C裡 將 MUSIC C添加到工程文件中去

  9 ***ERROR 107:ADDESS SPACE OVERFLOW

  SPACE: DATA

  SEGMENT: _DATA_GOUP_

  LENGTH: 0018H

  ***ERROR 118: REFERENCE MADE TO ERRONEOUS EXTERNAL

  SYMBOL: VOLUME

  MODULE: C:\8051\OSDM.OBJ(OSDM)

  ADDRESS: 4036H

  說明 data 存儲空間的地址範圍為 0~0x7f,當公用變量數目和函數裡的局部變量 如果存儲模式設為SMALL 則局部變量先使用工作寄存器R2~R7作暫存 當存儲器不夠用時則會以 data型別的空間作暫存的個數超過 0x7f 時就會出現地址不夠的現象

  解決方法 將以 data 型別定義的公共變量修改為 idata型別的定義

  10 「*** WARNING L1: UNRESOLVED EXTERNAL SYMBOL」

  *** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL

  如果你在用C51編譯器出現上面的警告,這個只是初學者和粗心者才會犯的錯誤:沒把C文件添加到項目中!

  另外,還有可能是因為存在沒有被調用的已經定義的函數,或者相關的已經定義的變量沒有使用。

  「*** WARNING L1: UNRESOLVED EXTERNAL SYMBOL」

  *** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL

  如果你在用C51編譯器出現上面的警告,這個只是初學者和粗心者才會犯的錯誤:沒把C文件添加到項目中!

  另外,還有可能是因為存在沒有被調用的已經定義的函數,或者相關的已經定義的變量沒有使用。

  「*** WARNING L1: UNRESOLVED EXTERNAL SYMBOL」

  *** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL

  如果你在用C51編譯器出現上面的警告,這個只是初學者和粗心者才會犯的錯誤:沒把C文件添加到項目中!

  另外,還有可能是因為存在沒有被調用的已經定義的函數,或者相關的已經定義的變量沒有使用。

相關焦點

  • 解析單片機中的keil常見問題
    在程序中出現了如下警告:  *** WARNING L15: MULTIPLE CALL TO SEGMENT  SEGMENT: ?PR?_CRCDATA?PANEL_DISP  CALLER1: ?C_C51STARTUP  CALLER2: ?PR?UART_RECV?
  • Keil編譯警告:function "assert_param" declared implicitly的...
    1 問題描述新建STM32的keil工程,在編譯時出現警告「..FWLIBsrcstm32f10x_rcc.c(273): warning: #223-D: function 「assert_param」 declared implicitly」,接下來一堆警告和錯誤。
  • Keil編譯常見問題
    需要將.C文件添加到工程文件中warning: #1-D main.c(7): warning: #1-D: last line of file ends without a newline當使用keil編譯時,彈出這樣的警告信息:main.c(7): warning: #1-D: last line of file ends without a newline
  • Keil C編譯器常見警告與錯誤信息解決方法
    Keil C編譯器常見警告與錯誤信息解決方法1.Warning 280:』i』:unreferenced local variable本文引用地址:http://www.eepw.com.cn/article/201611/316767.htm說明局部變量i 在函數中未作任何的存取操作解決方法消除函數中i 變量的宣告2 Warning 206:』Music3』:missing function-prototype
  • STM32 keil printf的使用
    請在MDK(keil)工程屬性的「Target「-》」Code Generation「中勾選」Use MicroLIB本文引用地址:http://www.eepw.com.cn/article/201611/315976.htm前提是你有一個完整keil的工程 比如ADC的調試的時候很多時候用到串口
  • keil添加PC-lint代碼靜態分析工具的方法
    關注+星標公眾號,不錯過精彩內容作者 | strongerHuang微信公眾號 | 嵌入式專欄 /*lint !e750. */ 作用就是:在使用PC-Lint工具進行靜態分析時,隱藏本行宏定義未被調用的「錯誤」。換種方式理解:編譯時,這條語句不出現警告信息(注意:這裡是比喻為編譯,其實是PC-Lint靜態分析)。
  • FDA再發警告:防曬霜中6種常見化學成分會在血液中大量累積
    據《華爾街日報》17日報導,美國食品藥品監督管理局(FDA)一項針對常見防曬成分的第二次研究結果證實,防曬霜中的6種常見化學物質可滲入血液,且血藥濃度遠遠超過了FDA規定的安全閾值。 ▲FDA針對常見防曬成分的第二次研究結果出爐。
  • 常見的幾種ADAS系統的簡稱及功能介紹
    下面對常見的幾種ADAS系統進行一下功能介紹。1、ACC-自適應巡航系統自適應巡航系統(Adaptive Cruise Control,ACC),可根據駕駛員設定的目標速度及與前車的相對距離,自動調整車速。
  • keil5.24創建uCOSIII工程實現stm32實時作業系統(環境配置)
    自從ARM keil升級到keil5系列版本後,Keil工具對作業系統,以及各種庫文件的移植大大簡化了只需要動動手指,勾選一些庫文件就能實現移植工作了。1:假設你安裝了keil 5.24(稍早點版本支持的os偏少),並且下載了你需要的支持包。
  • 【編程基礎學習教程】Keil(MDK-ARM)介紹、下載、安裝與註冊
    outputfile為輸文件名,缺少時為第一模塊名,後綴為.ABS。連接控制指令提供了連接定位時的所有控制功能。Commandfile為連接控制文件,其具體內容是包括了目標文件列表,庫文件列表及輸出文件、連接控制命令,以取代第一種繁瑣的格式,由於目標模塊庫文件大多不止1個,因而第2種方法較多見,這個文件名字也可由使用者隨意指定。
  • Keil中C語言與彙編語言混合編程需要注意的幾個地方
    > 點擊上方 「 暢學電子 」 一鍵關注,輕鬆學習電子知識暢學電子網·訂閱號每天更新電子行業技術文章,及單片機最新資訊,隨時隨地輕鬆學習在keil
  • Keil C51的一些有趣特性
    它的一些普通的特性大家也都了解,(書上也都說有)如:因為51內的RAM很小,C51的函數並不通過堆棧傳遞參數(重入函數除外),局部變量也不存儲在堆棧中,而是存在於固定的RAM中及寄存器中。那麼看一下下面的程序。
  • 英語中幾種常見的修辭格
    新東方網>大學教育>四六級>複習輔導>四級>四級輔導>詞彙>正文英語中幾種常見的修辭格 2011-03-31 17:11 來源:英語四級考試網
  • 出現進行性消瘦不能小覷,可能是這幾種疾病的警告!
    在沒有刻意減肥的情況下出現這種現象就要多加注意了,可能是這幾種疾病的警告!1. 惡性腫瘤消瘦常為惡性腫瘤的主要表現之一,腫瘤的迅速生長消耗能量,惡性腫瘤可能產生一種代謝毒素,使患者葡萄糖利用率降低,游離脂肪酸的氧化代謝增加,使胺基酸和乳酸鹽向糖原異生增加,ATP的無效消耗增多。
  • 你必須知道的高中英語中常見的幾種省略
    ---Did you come yesterday? ---I would like to have, but I was busy.我原想來,但太忙了。>虛擬語氣/ 虛擬微課/ wish/ as if/ if倒裝/ 強調句/ 反義疑問句 非謂語/ 獨立主格/ being done/with複合結構作文技巧/ 範文/ 寫作微課/寫作錯誤冠詞/ 代詞/ none/ it熟詞新義/ 詞彙變形情態動詞1/情態動詞2介詞1/介詞2主動表被動
  • 導致SELinux警告的四個常見原因
    導致SELinux警告的四個常見原因 本文主要介紹下四個導致 SELinux 警告產生的原因以及解決方案。因此,如果標註有問題的話,SELinux 就會彈出警告。如何處理此類,可以參看本站前文中關於semanage fcontext 和 restorecon 命令的使用。當然也可以按照圖形化的 SELinux 除錯工具中的提示解決。
  • keil-c常見編譯錯誤
    2、語法及語義錯誤:語法和語義錯誤都發生在原文件中。有這類錯誤時,給出提示但不產生目標文件,錯誤超過一定數量才終止編譯。3、警告:警告出現並不影響目標文件的產生,但執行時有可能發生問題。程式設計師應斟酌處理。
  • 常見的幾種兒童良性癲癇的類型
    核心提示:  常見的幾種兒童良性癲癇的類型?相信很多的家長都不知道兒童良性癲癇是什麼。兒童良性癲癇是一種良性的預後較好的癲癇症候群。兒童良性癲癇發生在特定的年齡階段,一般到特定年齡之後就能夠自行緩解,或是使用抗癲癇藥治療的效果比較好。兒童良性癲癇有很明顯的遺傳因素,因為預後較好而對患者的影響有限。那麼,常見的幾種兒童良性癲癇的類型?下面就請我們的專家來給大家介紹一下。
  • 郴州市201不鏽鋼水槽常見幾種用途
    郴州市201不鏽鋼水槽常見幾種用途 ,「186nihv8ofl」   無錫新同巨不鏽鋼有限公司生產郴州市201不鏽鋼水槽,廠家直銷,價格上有優勢,歡迎詢價,不報虛價!    郴州市201不鏽鋼水槽列印。
  • 小學語文常見的幾種寫作順序
    大家好,今天給大家歸納和分析下小學語文幾種常見的寫作順序。寫作順序,不僅對孩子寫作有幫助,還是閱讀題中考常的一種題型。按照難易程度,由易到難,依次給大家講述常見的寫作順序。一、孩子常見的,也是比較容易的寫作順序:時間順序。