欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
AT89C51單片機程序改錯error A9: SYNTAX ERROR
[打印本頁]
作者:
我真的不會啊!
時間:
2020-3-15 23:47
標題:
AT89C51單片機程序改錯error A9: SYNTAX ERROR
用的是AT89C51單片機,編程軟件之前試過uvision4,錯誤特別多,然后又嘗試了uvision2,結果下載完顯示是uvision3,我也不知道怎么回事,出現的錯誤比uvision4少一些,我需要生成hex文件用在proteus里,程序是在網上搜的,請各位指導,拜托了。
程序如下:
#define uc unsigned char
#define ut unsigned int
#define FOSC 18432000L
#define T1MS 1536//1ms定時器
#define unsigned int p3
sbit relay=p3^7;//繼電器輸出
sbit touch=p1^0;//觸摸檢測
uc sec,temp;
ut milsec;
void delay(uc i)
{
while(i) i--;
}
void InitUart(void);
void InintTimer0(void);
void InitADC(void);
uc GetADCResult(uc ch);
void main()
{
bit chanal;
ut save_times,light,voice;
AUXR=0x00;
InintTimer0();
InitADC();
sec=0;
relay=0;
while(1)
{
if(chanal)
{
light+=GetADCResult(2);//光照強度檢測
save_times++;
}
else
{
voice+=GetADCResult(6);//聲音分貝檢測
}
chanal=~chanal;
if(save_times==256) //消抖
{
save_times=0;
light/=256;
voice/=256;
}
if((light>200)||(voice>50)||(touch==0))relay=1;
if(sec>=20)relay=0; //延時輸出20秒后滅燈
delay(200);
delay(200);
}
}
void InitUart(void)
{
SCON=0x5a; //8個數據位,無校驗
TMOD=0x20; //8位自動裝載
TH1=TL1=-(FOSC/12/32/BAUD);//設置波特率
TR1=1; //使能定時1
}
void InintTimer0(void)
{
TMOD|=0x01;
TL0=T1MS;
TH0=T1MS>>8;
TR0=1;
ET0=1;
EA=1;
}
void InitADC(void)
{
P1=P1M0=0xff;
P1M1=0x00;
ADC_DATA=0;
ADC_CONTR=ADC_POWER|ADC_SPEEDLL;
delay(2);
}
uc GetADCResult(uc ch)
{
ADC_CONTR=ADC_POWER|ADC_SPEEDLL|ch|ADC_START;
_nop_();
_nop_();
_nop_();
_nop_();
while(!(ADC_CONTR & ADC_FLAG));//Wait complete flag
ADC_CONTR &=~ADC_FLAG;
return ADC_DATA;
}
void tm0_isr() interrupt 1 using 1
{
TL0=T1MS;
TH0=T1MS>>8;
milsec++;
if(milsec==1000)
{
if(sec<20)sec++;
}
}
end if
end
錯誤如下:
Build target 'Target 1'
assembling bulubulu.ASM...
F:\bulubulu.ASM(9): error A9: SYNTAX ERROR
F:\bulubulu.ASM(10): error A9: SYNTAX ERROR
F:\bulubulu.ASM(12): error A9: SYNTAX ERROR
F:\bulubulu.ASM(13): error A9: SYNTAX ERROR
F:\bulubulu.ASM(14): error A9: SYNTAX ERROR
F:\bulubulu.ASM(15): error A9: SYNTAX ERROR
F:\bulubulu.ASM(16): error A9: SYNTAX ERROR
F:\bulubulu.ASM(17): error A9: SYNTAX ERROR
F:\bulubulu.ASM(18): error A9: SYNTAX ERROR
F:\bulubulu.ASM(19): error A9: SYNTAX ERROR
F:\bulubulu.ASM(21): error A9: SYNTAX ERROR
F:\bulubulu.ASM(22): error A9: SYNTAX ERROR
F:\bulubulu.ASM(23): error A9: SYNTAX ERROR
F:\bulubulu.ASM(24): error A9: SYNTAX ERROR
F:\bulubulu.ASM(25): error A9: SYNTAX ERROR
F:\bulubulu.ASM(26): error A9: SYNTAX ERROR
F:\bulubulu.ASM(27): error A9: SYNTAX ERROR
F:\bulubulu.ASM(28): error A9: SYNTAX ERROR
F:\bulubulu.ASM(29): error A9: SYNTAX ERROR
F:\bulubulu.ASM(30): error A9: SYNTAX ERROR
F:\bulubulu.ASM(31): error A9: SYNTAX ERROR
F:\bulubulu.ASM(32): error A21: EXPRESSION WITH FORWARD REFERENCE NOT PERMITTED
F:\bulubulu.ASM(32): error A45: UNDEFINED SYMBOL (PASS-2)
F:\bulubulu.ASM(38): error A9: SYNTAX ERROR
F:\bulubulu.ASM(39): error A9: SYNTAX ERROR
F:\bulubulu.ASM(40): error A9: SYNTAX ERROR
F:\bulubulu.ASM(41): error A9: SYNTAX ERROR
F:\bulubulu.ASM(42): error A21: EXPRESSION WITH FORWARD REFERENCE NOT PERMITTED
F:\bulubulu.ASM(42): error A45: UNDEFINED SYMBOL (PASS-2)
F:\bulubulu.ASM(104): error A56: UNBALANCED IF-ENDIF CONTROLS
F:\bulubulu.ASM(104): warning A41: MISSING 'END' STATEMENT
Target not created
作者:
csmyldl
時間:
2020-3-16 00:46
程序中P3要大寫,且缺少單片機的頭文件
作者:
csmyldl
時間:
2020-3-16 00:49
#define unsigned int p3 此句的p3就要不大寫,建議改用其它名稱
作者:
csmyldl
時間:
2020-3-16 00:53
程序中很多常量未定義,如:BAUD ADC_DATA ADC_POWER
最后2行要刪除
作者:
wulin
時間:
2020-3-16 07:01
樓主在哪里找的程序,不但殘缺不全,而且錯誤百出。也不知樓主想用來干什么。就算補充完整修改錯誤后也不可能用于AT89C51單片機。
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1