1樓:
1. 變數宣告中間應該是逗號,不是分號:unsigned char i,j;
2. 你的函式沒有宣告,應該在include的下面加上一句:void delay(viod);
3. 函式應該這樣寫:void delay(viod)void main(void)
2樓:斷笛牧童
unsigned char i;j;不對。應該是i,j;
順便提一句,keil裡面的編譯器功能沒有vc的好,它很多東西是不完善的,有時候錯誤是顯示在這一行,但是事實上很可能是你在很遠的地方寫錯了某個字母。所以要自己加強檢查
3樓:匿名使用者
unsigned char i,,j; 逗號
4樓:匿名使用者
unsigned char i,,j; 定義兩個連續變數的時候,變數之間是逗號,否則要分開定義才行
unsigned char i;
unsigned char ,j;
5樓:匿名使用者
unsigned char i;j;這裡的標點不對
6樓:匿名使用者
標頭檔案用的是#include "reg51.h"
7樓:匿名使用者
具體錯誤是在哪一行?
微控制器keil編譯的問題
8樓:
#define led p2
最後面那個分號去掉,自己給自己找麻煩。
c語言的基本寫法要掌握……
9樓:
把#define 後面那個;去掉
keil,微控制器編譯問題,請高手進
10樓:
在編譯後進行連線時,未呼叫的函式所佔用的臨時空間都是單獨分配的,不會放入覆蓋呼叫空間內(因為聯結器不知道該函式會不會被隱式呼叫,這種情況下如果放在覆蓋空間內可能造成意外的改寫),因此會造成額外的記憶體開銷。
11樓:匿名使用者
???能不能詳細點??
微控制器 keil 編譯問題
12樓:太真醒
program size: data=148.0 xdata=0 code=2172
target not created
注意這個,你用的什麼微控制器??器件型別選的哪一款?
-------------------------------你看看工程的mcu是不是選錯了,keil說的是你mcu的記憶體不夠用,是不是選了標準的51?
----------------------------------不用擴充套件,你的mcu是夠用的。可能是你選錯了器件型別。編譯器認為你的mcu沒有那麼大記憶體
13樓:匿名使用者
code=2172
超過了 51 的eprom
你可以選擇用 c52 來 linking.
14樓:匿名使用者
記憶體不夠,解決方法1.擴充套件記憶體。2.
換用其他記憶體大的cpu,也有可能像3樓說的那樣使用了標準51。3.減少全域性變數定義,把部分data段定義為idata,這樣keil會自動覆蓋,節約記憶體。
因為你超出的不多,應該可以優化掉。
擴充套件記憶體方法
目標定義中增加xdata,編譯模式選擇large就可以了。
15樓:乘心宜於初
這個簡單,把程式裡面的
uchar
指令變成
uchar
xdata
就可以了
微控制器keil編譯出錯
16樓:匿名使用者
p0=0x01
其中的0x,打成字ox了,不是0,是字大寫字母o,ok的o!
微控制器c語言 keil編譯這些錯誤怎麼改
17樓:匿名使用者
前面定義的全域性變數陣列wenzi最後應該是分號,而不是逗號。
延時子程式中用了庫函式_nop_( ); 必須用#include包含標頭檔案intrins.h。因為沒加標頭檔案,_nop_( ) 是不識別的,才引起變數p錯誤。
兩個延時子程式前面要加void ,否則編譯時會警告。
主程式中還有幾處錯誤,修改如下圖
18樓:自我程式設計
你那個定義全域性變數陣列wenzi最後寫的是逗號,缺少分號。
19樓:匿名使用者
10行語法錯誤,看看{是不是多了。
15行變數p重複定義了。
16行,語法錯誤,)可能有少或多的。
20樓:杯具——悲劇
能有提示的全是語法錯誤,直接改掉就好了
關於c51微控制器使用keil編譯器的一些問題?
21樓:匿名使用者
1.如果沒有被呼叫,就不會被編譯,自然不佔用空間。
2.只要結構體有元素被使用,就要佔據整個結構體的空間。
3.多出來的0.2是位變數,表示你用了兩個bit的變數。
微控制器問題
晶振 6mhz 時鐘週期 1 6 10 6 秒,機器週期 12 時鐘週期 2us。機器週期個數 0.1s 2us 100000us 2us 50000。顯然需要用定時器工作方式1,因為只有2 16 65535 50000,2 13和2 8都小於50000.初值 2 16 50000 65536 50...
微控制器之間如何實現通訊,微控制器與微控制器之間如何進行序列通訊?
兩個單抄片機之間串列埠襲通訊,如果是用proteus 最簡單 bai了,兩個微控制器的rxd,txd交叉連線就行了。du要是實物最zhi好用rs232連線通訊,距離可以達到幾十米。再遠點距離,用rs485連線通訊。總之,方法很多的,dao也很靈活的。1 微控制器的通訊 有抄序列襲通訊和並行通bai信...
求助微控制器c語言程式問題,求助 微控制器C語言程式問題
第一個是在主程式中設定的定時計數器中斷相關引數設定,tmod 0x10 設定定時計數器的工作方式為方式1 16為計數器 也就是計數範圍為 0 65536 th1 65536 200 256 tl1 65536 200 256 設定計數器的初值為 200.ea 1 開總中斷,et1 1 開定時計數器1...