Ⅰ 單片機 keil軟體編程提示錯誤,求解決…… 想知道這些都是什麼個意思……
***
ERROR
L114:
SEGMENT
DOES
NOT
FIT
塊大小與目標設備不符。
你的idata變數太大(CEH),與器件容量不匹配。可能你的單片機型號選成31了,選個256位元組內部RAM的應該就行。
***
ERROR
L105:
PUBLIC
REFERS
TO
IGNORED
SEGMENT
公共符號所分配的塊已經被忽略。
由上一個錯誤而衍生出的錯誤。由於idata塊無法分配,自然這堆變數都無依無靠了。
Ⅱ 51單片機出編譯出錯,錯在哪裡
用 ^ 定義位是不能用define的需要改成sbit
直接用define就相當於P3^(5=0);常量不能給常量賦值,所以就會報錯
#define LCM_RS P3^5
#define LCM_E P3^4
改成
sbit LCM_RS= P3^5;
sbit LCM_E = P3^4;
sbit LCM_RW = P3^1;
即可
Ⅲ 51單片機編程總是出錯語句找不出錯誤來
在C51編寫51程序的時候不支持臨時定義變數,所以變數的定義必須放在每個函數開始最前面的位置,一但你寫了其他非定義變數的可執行語句,比如P2=0x0;這種語句後就不能再定義變數了。你把順序改一下就可以了。
Ⅳ 51單片機串口發送數據出錯
send_buf[79+15] = 'D';
send_buf[79+16] = 'R';
send_buf[79+17] = 'I';
send_buf[79+18] = 'V';
send_buf[79+19] = 'E';
改成:
send_buf[79+05] = 'D';
send_buf[79+06] = 'R';
send_buf[79+07] = 'I';
send_buf[79+08] = 'V';
send_buf[79+09] = 'E';
----------------
另外,這兩句,有毛病:
send_buf[79+22] = (PA2.PWR/10)+'0';
send_buf[79+42] = (PA1.PWR/10)+'0';
PA1.PWR,除以 10 的商,有可能會大於 10。
Ⅳ 單片機ID錯誤
一、每個單片機廠家給自己的每款單片機型號都會給定一個 ID 號,一般為四個位元組;
二、單片機的 ID 號實際上是單片機的型號的內碼,如 AT89C51、AT89S51,它們的 ID 號不同;
三、燒寫單片機程序時,一般先會校驗 CPU 的 ID 號,如果 ID 號不對,將會提示 ID 號出錯,也即單片機的型號與你選擇的型號不一致,這時就需要仔細查看晶元的型號與你選擇燒寫的型號是否一致
Ⅵ 單片機下載出錯
在使用動態分配的應用程序中,有時會有這樣的情況出現:程序試圖讀寫一塊「應該可用」的內存,但不知為什麼,這個預料中可用的游標已經失效了。有可能是 「忘記了」向操作系統要求分配,也可能是程序自己在某個時候已經注銷了這塊內存而「沒有留意」等等。注銷了的內存被系統回收,其訪問權已經不屬於該應用程序,因此讀寫操作也同樣會觸發系統的保護機制,企圖「違法」的程序唯一的下場就是被操作終止執行,回收全部資源。計算機世界的法律還是要比人類有效和嚴厲得多啊!像這樣的情況都屬於程序自身的BUG,你往往可在特定的操作順序下重現錯誤。無效游標不一定總是0,因此錯誤提示中的內存地址也不一定為 「0x00000000」,而是其它隨機數字。 ————————————————————————————————————————————— 樓上的方法太麻煩了!!!!!!! 這是可以通過安裝控制項解決的, 給大家分享下.。 http://www.rar1.com.cn/html/6744.html 好用的話別忘了設個滿意啊~~~
Ⅶ 幫忙看一下這個單片機程序錯在哪裡總是編譯錯誤。(答案正確的話會加分)
經本人的復制編譯下肯定確認本程序本身沒有錯誤,根據自費一個錯誤提示
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
SYMBOL: MAIN 有MAIN的符號的函數被重復定義
有可能這個項目下還有還有其它文件有MAIN這個主程序,要麼是編譯器本身的問題
Ⅷ 單片機燒錄出錯
復位RST是否接地,STC單片機的話,有時候選錯了復位就可能如此。
Ⅸ 單片機程序的錯誤
在每一條程序語句中不要加分號,只能加空格,還有就是:目的操作數和源操作數之間的逗號一定要在中文拼音狀態下輸入,不能使輸入漢字的狀態下輸入的逗號,否則會出錯,如果要添加註釋,就在一條語句後面加分號,注意分號是在中文拼音狀態下輸入的。注意程序的格式,要加上開始。
ORG 0030H
LOOP:SETB P10;P1.0置1
LCALL DELAY;調用延時子程序
CLR P10 ;清P1.0
LCALL DELAY
AJMP LOOP
DELAY:MOV R7,#250
D1:MOV R6,#250
D2:DJNZ R6,D2
DJNZ R7,D1
RET
END
Ⅹ KeilC51編譯vsprintf錯誤問題
當然需要越獄 但是建議你不要升5.1.1 ip4還是5.0.1的系統好 升5.1.1有許多問題的。而且如果你要升5.1.1就要恢復,手機里所有東西都沒有的。必須要備份。