標題: 單片機程序報錯error c129 missing';' before'milsec' [打印本頁]
作者: 二花花 時間: 2019-5-19 22:46
標題: 單片機程序報錯error c129 missing';' before'milsec'
大家幫我看看下面這個程序哪里出現問題了?為什么一直報錯error c129 missing';' before'milsec'
單片機源程序如下:
#define uchar unsigned char
#define uint unsigned int
#include <reg52.h>
#define FOSC 18432000L
#define T1MS 1536 //1ms 定時器
sbit relay =P3^7; // 繼電器輸出
sbit touch =P1^0; // 觸摸檢測
ut milsec;
uc sec,temp;
void delay(uc i)
{
while(i)i--;
}
void InitUart (void);
void InintTimer0 (void);
void InitADC (void);
uc GetADCResult (uc ch);
void main(0)
{
bitchanal;
utsave_times,light,voice;
AUXR= 0×00;
InintTimer0();
InitADC();
sec= 0;
relay= 0;
while(1) //進入主程序循環狀態,一直在這個while循環里檢測
{
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 = l;
if(sec>=20) relay = 0; //延時輸出20秒后滅燈
delay(200);
delay(200);
}
}
void InirUart(void)
{
SCON = 0×5a; //8個數據位,無校驗
TMOD = 0×20; //8位自動裝載
THI = TL1 = -(FOSC/12/32/BAUD); //設置波特率
TR1 = 1; //使能定時1
}
void InintTimer0(void)
{
TMOD | = 0×01;
TL0= T1MS;
TH0= T1MS >> 8;
TR0= 1;
ET0= 1;
EA= 1;
}
Void InitADC(void)
{
P1 = P1M0 = 0×ff,
P1M1 = 0×00;
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++;
}
}
作者: zhanghyg 時間: 2019-5-20 09:33
你這個錯誤可不止這一個,自己再好好看看吧
作者: 問青天磕大地 時間: 2019-5-20 12:23
怎么看到好多冒號啊
作者: 幻劍心 時間: 2019-5-20 14:50
兩種改法:1、ut milsec;改成uint milsec; uc sec,temp;改成uchar sec,temp;
作者: 幻劍心 時間: 2019-5-20 14:51
2、#define uchar unsigned char改成#define uc unsigned char #define uint unsigned int改成#define ut unsigned int
作者: wulin 時間: 2019-5-20 15:55
樓主的程序需要用英文重新抄一遍,包含太多中文字符,不可能通過編譯。
作者: angmall 時間: 2019-5-20 15:59
給你改了,對比一下就知道哪里錯了。
作者: 三感 時間: 2019-5-21 20:55
ut,uc就已經是錯的了
| 歡迎光臨 (http://m.raoushi.com/bbs/) |
Powered by Discuz! X3.1 |