Kert Wong 2021-10-08 16:40 采纳率: 50%
浏览 41
已结题

不知道是哪里出错了(没有C语言基础)

#include "reg52.h"

typedef unsigned int u16;
typedef unsigned char u8;
sbit s1=P3^1;
sbit s2=P3^3;
sbit s3=P3^4;
sbit led1=P2^0;
sbit led2=P2^1;

void delay(u16 i)
{
while(i--);
}

void keypros()
{
if(s1==1)
{
delay(1000);
if(s1==0)
{
led1=led1;
}
while(!s1);
}
if(s2==1)
{
delay(1000);
if(s2==0)
{
led2=
led2;
}
while(!s2);
}
if(s3==0)
{
delay(1000);
if(s3==1)
{
led1=led1;
led2=
led2;
}
while(!s3);
}
}
{
led=1;
while(1)
{
keypros();
}
}
以下是报错内容
Build target 'Target 1'
compiling main.c...
main.c(49): error C141: syntax error near '{'
main.c(51): error C141: syntax error near 'while'
main.c(51): error C141: syntax error near '1'
main.c(53): error C231: 'keypros': redefinition
main.c(54): error C141: syntax error near '}'
Target not created.
Build Time Elapsed: 00:00:00
是在Keil5编译的

  • 写回答

1条回答 默认 最新

  • 偷窃月亮的贼 2021-10-08 16:46
    关注

    你抄代码是不是把main忘抄了:

    #include "reg52.h"
    
    typedef unsigned int u16;
    typedef unsigned char u8;
    sbit s1 = P3 ^ 1;
    sbit s2 = P3 ^ 3;
    sbit s3 = P3 ^ 4;
    sbit led1 = P2 ^ 0;
    sbit led2 = P2 ^ 1;
    
    void delay(u16 i)
    {
        while (i--)
            ;
    }
    
    void keypros()
    {
        if (s1 == 1)
        {
            delay(1000);
            if (s1 == 0)
            {
                led1 = led1;
            }
            while (!s1)
                ;
        }
        if (s2 == 1)
        {
            delay(1000);
            if (s2 == 0)
            {
                led2 = led2;
            }
            while (!s2)
                ;
        }
        if (s3 == 0)
        {
            delay(1000);
            if (s3 == 1)
            {
                led1 = led1;
                led2 = led2;
            }
            while (!s3)
                ;
        }
    }
    int main()
    {
        led = 1;
        while (1)
        {
            keypros();
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月7日
  • 已采纳回答 11月29日
  • 创建了问题 10月8日

悬赏问题

  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分