欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標(biāo)題:
keil編程出現(xiàn)未定義標(biāo)識(shí)符和參數(shù)列表長(zhǎng)度不同錯(cuò)誤,怎么解決
[打印本頁]
作者:
建檔扶貧對(duì)象
時(shí)間:
2020-3-20 17:12
標(biāo)題:
keil編程出現(xiàn)未定義標(biāo)識(shí)符和參數(shù)列表長(zhǎng)度不同錯(cuò)誤,怎么解決
這里是聲明部分和主函數(shù)部分函數(shù)。出問題的是:void Delay(uint time)參數(shù)列表長(zhǎng)度不同、waitforstarting未定義標(biāo)識(shí)符,大神看看是哪里出問題了。附件里有全部函數(shù)
#include<reg52.h>
#include<intrins.h>
#include<math.h>
#define uchar unsigned char
#define uint unsigned int
#define Lcd_Data P0; //定義LCD數(shù)據(jù)端口
uchar code dispbuf[33]={"Temperature: Distance: mm"};
uchar numcode[10]={'0','1','2','3','4','5','6','7','8','9'};
uint num[29]={0};
uchar jsh,jsl; //計(jì)時(shí)器的高低位
uchar count=0; //10秒計(jì)次數(shù)
uint distance; //距離
sbit RS=P2^0;
sbit RW=P2^1;
sbit E=P2^2;
sbit DQ=P2^7; //DS18B20數(shù)字端口
sbit Busy=P0^7;
uint temp; //溫度變量
uchar bdata flag; //DS18B20存在標(biāo)準(zhǔn)
void Delay(void); //延時(shí)函數(shù)
void Read_Busy(void); //檢查L(zhǎng)CD是否忙
void lint_18B20(void); //初始化18B20
void Write_Comm(uchar); //寫入LCD命令
void Write_Data(uhar); //寫入LCD數(shù)據(jù)
void lint_LCD(void); //初始化LCD
uchar Readonechar(void); //讀取第一個(gè)字節(jié)
void Writeonechar(uchar dat); //寫入第一個(gè)字節(jié)
void testtemp(void); //啟動(dòng)溫度轉(zhuǎn)換
uint wd(void); //讀取溫度
void Delay(uint time); //延時(shí)函數(shù)
sbit sta_flag=flag^0; //10MS到標(biāo)準(zhǔn)位
sbit fuhao=flag^1; //溫度符號(hào)位
sbit START=P1^0; //啟動(dòng)測(cè)距
sbit CNT=P2^5; //發(fā)射超聲波
sbit CSBIN=P2^6; //返回信號(hào)
sbit BUZZER=P3^7;
void timer(void);
void delay1ms(void); //延時(shí)1MS
void sys_init(void); //系統(tǒng)初始化
void display(void); //顯示函數(shù)
void computer(void); //計(jì)算
void hextobcd(bit flag,uchar num); //轉(zhuǎn)換BCD
void bm(void); //求補(bǔ)碼
void delay15(uchar us); //延時(shí)15us
/***********主函數(shù)**************/
void main(void)
{
uchar i,j;
for(i=0;i<255;i++)
for(j=0;j<255;j++);
sys_init(); //初始化
display(); //顯示
sta_flag=0; //標(biāo)準(zhǔn)復(fù)位
Waitforstarting; // 檢查按鍵
while(START);
for(i=0;i<20;i++)
delay1ms();
if(START)
goto waitforstarting;
BUZZER=0;
i=100000;
while(i--);
TR0=1; //啟動(dòng)定時(shí)器0
ET0=1;
testtemp(); //啟動(dòng)溫度轉(zhuǎn)換
while(1)
{
if(sta_flag) //10MS到了
{
while(0==CSBIN); //收到回波
TR1=0;
jsh=TH1;
jsl=TL1;
if(15==count) //900MS到檢測(cè)溫度
{
temp=wd(); //讀取溫度
count=0;
testtemp(); //重新啟動(dòng)轉(zhuǎn)換
display(); //刷新顯示
}
computer(); //計(jì)算距離
hextobcd(); //轉(zhuǎn)換BCD碼
sta_flag=0;
}
}
}
include.docx
2020-3-20 17:08 上傳
點(diǎn)擊文件名下載附件
19.92 KB, 下載次數(shù): 7
作者:
xxpp2011
時(shí)間:
2020-3-20 17:12
我看了你的代碼,第一個(gè)問題
void Delay(uint time); //延時(shí)函數(shù)
聲明時(shí)括號(hào)里面的uint time意思是調(diào)用這個(gè)函數(shù)時(shí)需要在括號(hào)里面輸入?yún)?shù)time,可以填一個(gè)數(shù)字(具體需要延時(shí)的長(zhǎng)度)。
然而你在前面還有一行聲明了名稱一樣的函數(shù),里面沒有定義輸入?yún)?shù)
void Delay(void); //延時(shí)函數(shù)
需要把這行刪掉。
第二個(gè)問題
Waitforstarting; // 檢查按鍵
這不是一個(gè)合法的函數(shù),調(diào)用的時(shí)候要Waitforstarting();
后面你也沒有類似 void Waitforstarting(){里面填功能}的聲明,所以不知道有什么用。
作者:
飄窗
時(shí)間:
2020-3-20 17:25
我覺的哈,你這個(gè)goto的標(biāo)記Waitforstarting那里是不是用的; 要用: 的吧,你可以看一下
作者:
f556
時(shí)間:
2020-3-20 17:33
Waitforstarting; 寫成Waitforstarting();
作者:
carpcarey
時(shí)間:
2020-3-20 19:03
1:后面用到 goto waitforstarting; 說明 waitforstarting 是標(biāo)號(hào)。標(biāo)號(hào)的定義末尾應(yīng)該是冒號(hào),而不是分號(hào)。
2:C對(duì)大小寫敏感,Waitforstarting和waitforstarting不是一個(gè)東西。這個(gè)要統(tǒng)一。
3:Delay函數(shù)定義了2次。分別是24行的void Delay(void); //延時(shí)函數(shù)
和35行的void Delay(uint time); //延時(shí)函數(shù)
而且這兩個(gè)函數(shù)的參數(shù)還不一樣。。。。
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1