标题: 单片机程序报错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://www.51hei.com/bbs/) |
Powered by Discuz! X3.1 |