大家好!這是我編的微控制器程式,但是在keil程式中編譯時老出錯,請大俠們幫我看下!感激不盡

2021-06-17 21:29:07 字數 3605 閱讀 6965

1樓:匿名使用者

你的源程式我在keil c中編譯通過了,沒有問題呀!你編譯時出什麼錯誤呀,是不是你的設定不對呀!

2樓:匿名使用者

是不是沒有註冊呀?位元組數受限制!

3樓:斬丨我了個去

你把報錯的**貼出來看下

4樓:成學

我要查詢廣東陳進學**

有一個程式,我在keil上編譯的時候有一個錯誤,但不知道在怎麼改,求大神們幫忙看一下!!

5樓:做而論道

連結中給出**,經過編譯,沒有顯示任何錯誤。

複製貼上如下:

#include

#include

unsigned char tmp;

unsigned int c=0;

sbit led1=p2^0; //指示燈0

sbit led2=p2^1; //指示燈1

sbit led3=p2^3; //指示燈3

void init(); //串列埠初始化

void send(unsigned char a); //單位元組傳送函式

void ctrl(); //接收處理函式

void main()

}}void init() //串列埠初始化

void send(unsigned char a) //單位元組資料傳送

void ctrl() //接收處理函式

}上述**,沒有任何修改,完全是題目連結裡面所給出的。

我用keil在編譯程式的時候出錯了,我選用的是stc89c51型號的微控制器,程式是我複製別人的 10

6樓:

你還是把全部程式發上來吧,或者把錯誤提示中指定行的**發上來,好像是語法錯誤,其中應該有一個符號用錯了"]"。

7樓:

圖看不清,並且這些位定義一般不會有錯哦,應該是下面錯誤,程式整段發出來吧

8樓:爬行的山羊

sbit serialin_0=p2_0;

埠定義換成這個

9樓:巨季雅

很負責任地告訴你,你的上段程式沒有語法錯誤。

位定義 sbit clock_sclk=p1^2; 是對的,你沒有缺少;,結構也沒有問題

你再好好檢查一下,其他有沒有“;”寫錯的情況或者全形半形有問題錯誤中“]”是怎麼來的呢?可能是它附近有錯誤吧,你可以通過遮蔽方式一點一點檢查

直到錯誤完全排除ok

菜鳥向大俠請教:用keil軟體編的程式,編譯時沒錯。軟體**時出錯是怎麼回事?

10樓:匿名使用者

這說明你的程式沒有語法錯誤,但有邏輯錯誤,keil只能檢查出語法錯誤。

微控制器程式編譯的時候出錯了,要看的只有三條語句。

11樓:

前面那個是賦值運算,p3 ^ 4就是p3的值和4做異或運算,結果是一個常數,給常數賦值當然是錯誤的;

後面那句是判等,p3 ^ 0 == 1等同於p3 ^(0==1)就是p3的值和0做異或運算,再判斷結果是否為真,這樣的運算是符合規定的,所以不會報錯,只是結果不是你想象的了

12樓:匿名使用者

p3^4=0;要出錯,因為相當於給p3的4次方賦值為1,顯然c語法是不允許的。

if(p3^0==0)是一個條件語句,當p3的0次冪為0時的意思,所以c語法是允許的。

sbit lie1=p3^4則是keil允許這樣定義io口的。

13樓:匿名使用者

p3^4是io腳,keil的c是不支援的,只能定義成其他變數使用。

14樓:清晨復日暮

p3代表的是在標頭檔案中定義的具有地址的一個特殊暫存器的,不是這麼用的。

為什麼用keil程式設計軟體編譯時老是出現“目標未建立”

15樓:情談學長

使用keil程式設計軟體進行編譯時,由於建立了專案錯誤,始終會出現“未建立目標”。具體的編譯步驟如下:

1,從軟體下拉選單的頂部選擇[專案]-[新專案]。

2,在彈出視窗中,選擇專案檔案。 (如果沒有專案檔案,請建立一個新的專案檔案並填寫一個名詞點進行儲存。)

3,選擇單晶片模型(例如89c52或89c51)。

4,右鍵單擊左側專案“ source group 1”,然後選擇“將c檔案新增到專案組”。 (例如,新增以下c程式檔案。)

5,新增完成後,c檔名將顯示在左側。雙擊檔案以編輯右側的程式。

6,編輯c程式,編譯成十六進位制檔案,用於寫入cpu微控制器。

16樓:輕煙談生活

用keil程式設計軟體編譯時老是出現“目標未建立”是由於建立工程錯誤,具體編譯步驟如下:

1、在軟體頂部下拉選單選【工程】-【新建工程】。

2、在彈出視窗,選擇工程檔案。(如果無工程檔案,新建一個工程檔案,填一個名詞點儲存。)

3、選擇一個微控制器型號(比如89c52,也可以89c51)。

4、右擊左側工程“source group 1”,選擇增加一個c檔案到工程組裡。(比如增加下面的c程式檔案。)

5、增加後,左側會看到c檔名稱了,雙擊檔案可以在右側進行編輯程式。

6、編輯完c程式,進行編譯成hex檔案,用於寫進cpu微控制器。

17樓:匿名使用者

test.asm 檔案不再你的工程專案中,無法生成test.obj。

故編譯時找不到檔案造成的。

從你的截圖中有test.asm 中有ogr 0,你新建一個專案加入專案中。

18樓:

那就是表示編譯未通過呀!這時要去檢視是不是有什麼錯誤存在!正常情況下若編譯通過後就會建立目標!

19樓:

可能是c檔名中有空格哦

20樓:艾迪得

你試著重啟一下應用,不行的話是不是有什麼東西沒開

21樓:匿名使用者

你截圖看看,是不是你檔案沒有加到工程呀,還是你main函式名寫錯了?

stc微控制器程式在keil編譯時出現警告資訊請教

22樓:匿名使用者

code space memory overlap1.**段地址重複了,生成的**超過了編譯器最大限制,或是你重複使用了相同的地址.

unresolved external symbolsymbol: ?c_start

2.你檔案儲存的副檔名是不是.asm的,或是你仔細的檢查一下,是不是標號寫錯了或是忘寫了.主程式出問題的可能性比較大,看警告你就知道了

,實在不行你把程式通過訊息發過來,我給你看一下,看不到程式具體問題出在哪不好說.

大家好,我是學工科的!現在學微控制器想做一些專案!但專案是需要

專案當然重 任務書 開始,根據任務書的要求,做方案設計,進一步完善設計,直到樣機 樣品 試製,通過驗證,到投放生產。拿到任務書後,你需要分析具體要求,設計原理圖,編制程式,繪製pcb圖,購買元器件,焊接,除錯,直至成功。就這個過程。大家好!我是計算機專業,在學51微控制器,我想學做一些綜合性強的小專...

請教微控制器高手為什麼我的程式執行時沒反應?是delay函式的問題嗎

define led p0 uchar led 0x7f 這兩個定義衝突了,只會操作區域性變數,不會操作p0,重寫定義乙個變數,然後把變數賦值給p0.你這句led led 8 n 使得if裡的條件不可能會成立,要改成led led 0x01 這樣led裡的值才可能 0x80 我比較支援 rockri...

大家好,我是學工程造價的,我想考專公升本,但是不知道那個學校有

天津城建學院 重慶大學 長春工程學院.吉林建築學院.重慶文理學院.西華大學 內蒙古科技大學.西安財經學院安徽建築學院 河南省內開設此專業學校有 平頂山工學院 最早開設工程造價 其次河南財經學院,其他二本屬,工程管理專業涉及工程造價,鄭州航院,華北水利,洛陽理工 專科 安陽工學院等。開設 工程管理 的...