KEIL照书上打的程序 出现两错误,实在找出不!求大神指导!!
#include<reg51.h>#defineINT8Uunsignedchar#defineINTU16unsignedintsbitRED_A=P0^0;//东西向...
#include<reg51.h>
#define INT8U unsigned char
#define INTU16 unsigned int
sbit RED_A = P0^0;//东西向指示灯
sbit YELLOW_A = P0^1;
sbit GREEN_A = P0^2;
sbit RED_B = P0^3;//南北向指示灯
sbit YELLOW_B = P0^4;
sbit GREEN_B = P0^5;
//闪烁次数及操作类型变量定义
INT8U Flash_Count =0,Operation_Type=1;
//-----------------------------------------
//延时函数
//-----------------------------------------
void delay_ms(INT16U x)
{
INT8U t; while(x--) for(t = 0;t < 120; t++);
}
//------------------------------
//交通灯切换子程序
//--------------------------
void Traffic_Light()
{
switch (Operation_Type)
{
case 1://东西向绿灯与南北向红灯亮
RED_A=1;YELLOW_A=1;GREEN_A=0;
RED_B=0;YELLOW_B=1;GREEN_B=1;
//延时
delay_ms(200);
Operation_Type=2; //下一操作
break;
case 2://东西向黄灯开始闪烁,绿灯关闭
delay_ms(30);
YELLOW_A = ~YELLOW_A;GREEN_A = 1;
if(++Flash_Count!=10) return;//闪烁5次
Flash_Count=0;
Operation_Type=3;//下一操作
break;
case 3://东西向红灯与南北向绿灯亮
RED_A=0;YELLOW_A=1;GREEN_A=1;
RED_B=1;YELLOW_B=1;GREEN_B=0;
delay_ms(200);//南北向绿灯亮若干秒后切换
Operation_Type=4;//下一操作
break;
case 4://南北向黄灯开始闪烁
delay_ms(30);
YELLOW_B=~YELLOW_B;GREEN_B=1;
if(++Flash_Count !=10)return;//闪烁5次
Flash_Count=0;
Operation_Type=1;//回到第一种操作
}。。。。。。。。。
错误有两个!.
TEXT1.C(15): error C141: syntax error near 'x', expected ')'
TEXT1.C(17): error C202: 'x': undefined identifier 展开
#define INT8U unsigned char
#define INTU16 unsigned int
sbit RED_A = P0^0;//东西向指示灯
sbit YELLOW_A = P0^1;
sbit GREEN_A = P0^2;
sbit RED_B = P0^3;//南北向指示灯
sbit YELLOW_B = P0^4;
sbit GREEN_B = P0^5;
//闪烁次数及操作类型变量定义
INT8U Flash_Count =0,Operation_Type=1;
//-----------------------------------------
//延时函数
//-----------------------------------------
void delay_ms(INT16U x)
{
INT8U t; while(x--) for(t = 0;t < 120; t++);
}
//------------------------------
//交通灯切换子程序
//--------------------------
void Traffic_Light()
{
switch (Operation_Type)
{
case 1://东西向绿灯与南北向红灯亮
RED_A=1;YELLOW_A=1;GREEN_A=0;
RED_B=0;YELLOW_B=1;GREEN_B=1;
//延时
delay_ms(200);
Operation_Type=2; //下一操作
break;
case 2://东西向黄灯开始闪烁,绿灯关闭
delay_ms(30);
YELLOW_A = ~YELLOW_A;GREEN_A = 1;
if(++Flash_Count!=10) return;//闪烁5次
Flash_Count=0;
Operation_Type=3;//下一操作
break;
case 3://东西向红灯与南北向绿灯亮
RED_A=0;YELLOW_A=1;GREEN_A=1;
RED_B=1;YELLOW_B=1;GREEN_B=0;
delay_ms(200);//南北向绿灯亮若干秒后切换
Operation_Type=4;//下一操作
break;
case 4://南北向黄灯开始闪烁
delay_ms(30);
YELLOW_B=~YELLOW_B;GREEN_B=1;
if(++Flash_Count !=10)return;//闪烁5次
Flash_Count=0;
Operation_Type=1;//回到第一种操作
}。。。。。。。。。
错误有两个!.
TEXT1.C(15): error C141: syntax error near 'x', expected ')'
TEXT1.C(17): error C202: 'x': undefined identifier 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询