引用#include <reg52.h>#include <intrins.h>之后总是出现error‘;’before‘==’
#include<reg52.h>#include<intrins.h>sbitEN1=P0^4;//使能端位定义sbitEN2=P0^5;sbitIN1=P0^0;//...
#include <reg52.h>
#include <intrins.h>
sbit EN1=P0^4; //使能端位定义
sbit EN2=P0^5;
sbit IN1=P0^0; //电机驱动位定义
sbit IN2=P0^1;
sbit IN3=P0^2;
sbit IN4=P0^3;
sbit zcgq=P2^0; //左右传感器位定义
sbit ycgq=P2^1;
sbit zjsq=P2^4; //左右接收器位定义
sbit yjsq=P2^5;
sbit key1=P1^0; //按键接收位定义
sbit key2=P1^1;
sbit key3=P1^2;
sbit key4=P1^3;
bit irDetectLeft==1;irDetectRight==1; //位定义接收端初始化
int z==0;
void delay(int n) //转弯和直行延时程序
{
unsigned char h,i,j,k;
for(h=n;h>0;h--)
for(i=4;i>0;i--)
for(j=116;j>0;j--)
for(k=214;k>0;k--);
}
void Delay13us( )
{
_NOP_( );
_NOP_( );
_NOP_( );
_NOP_( );
_NOP_( );
_NOP_( );
_NOP_( );
_NOP_( );
_NOP_( );
}
void faward() //前进子程序
{
IN1=1;
IN2=0;
IN3=1;
IN4=0;
EN1=1;
EN2=1;
}
void turn_left() //左转子程序
{
IN1=1;
IN2=0;
IN3=0;
IN4=1;
EN1=1;
EN2=1;
}
void turn_right() //右转子程序
{
IN1=0;
IN2=1;
IN3=1;
IN4=0;
EN1=1;
EN2=1;
}
void stop() //停车程序
{
IN1=0;
IN2=0;
IN3=0;
IN4=0;
EN1=0;
EN2=0;
}
void hongwai() //发送38.5KHz的红外信号
for(
unsigned char counter;
counter=0;counter< 38;counter++)
{
zcgq=1;
ycgq=1;
void Delay13us( );
zcgq=0;
ycgq=0;
void Delay13us( );
}
void YDT() //右掉头子程序
{
turn_right();
delay(5);
hongwai();
jieshou();
irDetectLeft=P2_4state();
irDetectRight=P2_5state();
if((irDetectLeft==0)||(irDetectRight==0))
{
delay(300) //停车延时1分钟等待手动遥控
}
else
{
void faward();
delay(10);
turn_right();
delay(5);
}
}
void ZDT() //左掉头子程序
{
turn_left();
delay(5);
hongwai();
jieshou();
irDetectLeft=P2_4state();
irDetectRight=P2_5state();
if((irDetectLeft==0)||(irDetectRight==0))
{
delay(150) //停车延时30s等待手动遥控
}
else
{
void faward();
delay(10);
turn_left();
delay(5);
}
}
void zw() //掉头转弯
{
switch(z)
case 0:YDT();z++;break; //右掉头
case 1:ZDT();z--;break; //左掉头
}
void jieshou() //接收红外信号
void P2_4state()
{
return (P2&0x10)?1:0;
}
void P2_5state()
{
return (P2&0x20)?1:0;
}
void yaokong() //遥控子程序
while(1)
{
if(key1==1)
{
faward();
}
else
{
if(key2==1)
{turn_left();
}
else
{
if(key3==1)
{turn_right();
}
else
{
if(key4==1)
{
stop();
}
}
}
}
}
void main(void)
{
while(1)
{
if(key1==1||key2=1||key3=1||key4=1) //有遥控信号输入吗
{
yaokong(); //执行遥程序
}
else
{
while(1)
{
hongwai();
jieshou();
irDetectLeft=P2_4state();
irDetectRight=P2_5state();
if((irDetectLeft==0)||(irDetectRight==0))
{
if(z==0)
{
YDT();
}
else
{
ZDT();
}
}
else
{
faward();
delay(10);
}
编译提示的错误如下:compiling ll.c...
LL.C(17): error C129: missing ';' before '=='
ll.c - 1 Error(s), 0 Warning(s). 展开
#include <intrins.h>
sbit EN1=P0^4; //使能端位定义
sbit EN2=P0^5;
sbit IN1=P0^0; //电机驱动位定义
sbit IN2=P0^1;
sbit IN3=P0^2;
sbit IN4=P0^3;
sbit zcgq=P2^0; //左右传感器位定义
sbit ycgq=P2^1;
sbit zjsq=P2^4; //左右接收器位定义
sbit yjsq=P2^5;
sbit key1=P1^0; //按键接收位定义
sbit key2=P1^1;
sbit key3=P1^2;
sbit key4=P1^3;
bit irDetectLeft==1;irDetectRight==1; //位定义接收端初始化
int z==0;
void delay(int n) //转弯和直行延时程序
{
unsigned char h,i,j,k;
for(h=n;h>0;h--)
for(i=4;i>0;i--)
for(j=116;j>0;j--)
for(k=214;k>0;k--);
}
void Delay13us( )
{
_NOP_( );
_NOP_( );
_NOP_( );
_NOP_( );
_NOP_( );
_NOP_( );
_NOP_( );
_NOP_( );
_NOP_( );
}
void faward() //前进子程序
{
IN1=1;
IN2=0;
IN3=1;
IN4=0;
EN1=1;
EN2=1;
}
void turn_left() //左转子程序
{
IN1=1;
IN2=0;
IN3=0;
IN4=1;
EN1=1;
EN2=1;
}
void turn_right() //右转子程序
{
IN1=0;
IN2=1;
IN3=1;
IN4=0;
EN1=1;
EN2=1;
}
void stop() //停车程序
{
IN1=0;
IN2=0;
IN3=0;
IN4=0;
EN1=0;
EN2=0;
}
void hongwai() //发送38.5KHz的红外信号
for(
unsigned char counter;
counter=0;counter< 38;counter++)
{
zcgq=1;
ycgq=1;
void Delay13us( );
zcgq=0;
ycgq=0;
void Delay13us( );
}
void YDT() //右掉头子程序
{
turn_right();
delay(5);
hongwai();
jieshou();
irDetectLeft=P2_4state();
irDetectRight=P2_5state();
if((irDetectLeft==0)||(irDetectRight==0))
{
delay(300) //停车延时1分钟等待手动遥控
}
else
{
void faward();
delay(10);
turn_right();
delay(5);
}
}
void ZDT() //左掉头子程序
{
turn_left();
delay(5);
hongwai();
jieshou();
irDetectLeft=P2_4state();
irDetectRight=P2_5state();
if((irDetectLeft==0)||(irDetectRight==0))
{
delay(150) //停车延时30s等待手动遥控
}
else
{
void faward();
delay(10);
turn_left();
delay(5);
}
}
void zw() //掉头转弯
{
switch(z)
case 0:YDT();z++;break; //右掉头
case 1:ZDT();z--;break; //左掉头
}
void jieshou() //接收红外信号
void P2_4state()
{
return (P2&0x10)?1:0;
}
void P2_5state()
{
return (P2&0x20)?1:0;
}
void yaokong() //遥控子程序
while(1)
{
if(key1==1)
{
faward();
}
else
{
if(key2==1)
{turn_left();
}
else
{
if(key3==1)
{turn_right();
}
else
{
if(key4==1)
{
stop();
}
}
}
}
}
void main(void)
{
while(1)
{
if(key1==1||key2=1||key3=1||key4=1) //有遥控信号输入吗
{
yaokong(); //执行遥程序
}
else
{
while(1)
{
hongwai();
jieshou();
irDetectLeft=P2_4state();
irDetectRight=P2_5state();
if((irDetectLeft==0)||(irDetectRight==0))
{
if(z==0)
{
YDT();
}
else
{
ZDT();
}
}
else
{
faward();
delay(10);
}
编译提示的错误如下:compiling ll.c...
LL.C(17): error C129: missing ';' before '=='
ll.c - 1 Error(s), 0 Warning(s). 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询