江上酒酒 发表于 2024-11-8 17:04:33

发现错误

一直编译不了


#include <STC32G.H>
#include <INTRINS.H>
void Delay10ms(void);
unsigned int a,a1,a2,a3,a4,a5,a6,a7,a8,h,c,d,e,f1,f2,f3,f4;
unsigned char code number[]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80};
void Delay10ms(void)        //@24.000MHz
{
        unsigned char data i, j;

        i = 39;
        j = 230;
        do
        {
                while (--j);
        } while (--i);
}
void main()
{
      P0M0=0X00;
      P0M1=0X00;
      P4M0=0X00;
      P4M1=0X00;
      P6M0=0X00;
      P6M1=0X00;
              P7M0=0X00;
              P7M1=0X00;
              P7=0X7F;
      while(1)
      {
                                       
                                        d=1;
//                                       P0=0XFE;                        //检测第一列
//         if(P06==0&&P07==1) {c=1;}   //0键按下
//                                           if(P06==1&&c==1) {c=2;a=1;}
//         if(P06==1&&P07==0){c=1;}//4键按下
//             if(P07==1&&c==1) {c=2;a=5;}
//                                       P0=0XFD;                        //检测第二列
//                                       if(P06==0&&P07==1){c=1;}//1键按下   
//                                           if(P06==1&&c==1) {c=2;a=2;}
//                                       if(P06==1&&P07==0){c=1;}//5键按下   
//                                           if(P07==1&&c==1) {c=2;a=6;}
                                       P0=0XFB;                        //检测第三列
                                       
         if(P06==0&&P07==1){c=1;if(P06==1&&c==1) {c=2;a=3;f2=1;}}//2键按下       
                                          
         if(P06==1&&P07==0){c=1;if(P07==1&&c==1) {c=2;a=7;f1=1;}}//6键按下   
                                          
                                       
                                       P0=0XF7;                        //检测第四列
         if(P06==0&&P07==1){c=1;if(P06==1&&c==1) {c=2;a=4;f3=1;}}//3键按下
                                          
         if(P06==1&&P07==0){c=1;if(P07==1&&c==1) {c=2;a=8;f4=1;}}//7键按下      
                          
                                                h=f1+f2+f3+f4;

                                       for(c;c<=2;c++;)
                                       {
         if(h==1) {a1=a;}                //第一次按下,数码管将要显示的数字
                                       if(h==2) {a2=a;}                //第二次按下,数码管将要显示的数字
                                       if(h==3) {a3=a;}                //依次类推
                                       if(h==4) {a4=a;}
                                       if(h==5) {a5=a;}
                                       if(h==6) {a6=a;}
                                       if(h==7) {a7=a;}
                                       if(h==8) {a8=a;}
                                   }
                               
                                        if(c==3&&d!=10)
                                        {
                                       for(d=1;d<=h;d++;)               //数码管依次显示
                                       {
             if(d==1) {P6=number;e=1;} //第一次按下时,数码管显示的数字
                                               if(d==2) {P6=number;e=1;} //第二次按下时,数码管显示的数字
                                               if(d==3) {P6=number;e=1;} //依次类推
                                               if(d==4) {P6=number;e=1;}
                                               if(d==5) {P6=number;e=1;}
                                               if(d==6) {P6=number;e=1;}
                                               if(d==7) {P6=number;e=1;}
                                               if(d==8) {P6=number;e=1;}
                                               if(d>=2&&e==1){e=0;P7=_cror_(0X7F,d-1);} //只有第二次及以上按下时,才会移位
                                               Delay10ms();
//                                               P0=0XFE;
//                                               if(P06==0||P07==0) {d=9;}   //当有按键按下时,弹出循环
//                                               P0=0XFD;
//             if(P06==0||P07==0) {d=9;}   //当有按键按下时,弹出循环
             P0=0XFB;
             if(P06==0||P07==0) {d=9;P7=0X7F;}   //当有按键按下时,弹出循环
             P0=0XF7;
             if(P06==0||P07==0) {d=9;P7=0X7F;}   //当有按键按下时,弹出循环
             if(d==h) {d=0;P7=0X7F;}               //快结束循环时,继续循环
                                       }
                               }
                       }
               }

国学芯用 发表于 2024-11-8 17:09:11

你把错误 提醒 截图出来或者打包发出来

江上酒酒 发表于 2024-11-8 17:12:53

国学芯用 发表于 2024-11-8 17:09
你把错误 提醒 截图出来或者打包发出来

Build target 'Target 1'
compiling 2.c...
2.c(56): error C25: syntax error near ';'
2.c(70): error C25: syntax error near ';'
2.c(72): error C25: syntax error near '=='
2.c(72): error C25: syntax error near '}'
2.c(73): error C25: syntax error near '=='
2.c(73): error C53: redefinition of 'P6'
2.c(73): error C53: redefinition of 'e'
2.c(73): error C25: syntax error near '}'
2.c(74): error C25: syntax error near '=='
2.c(74): error C53: redefinition of 'P6'
2.c(74): error C53: redefinition of 'e'
2.c(74): error C25: syntax error near '}'
2.c(75): error C25: syntax error near '=='
2.c(75): error C53: redefinition of 'P6'
2.c(75): error C53: redefinition of 'e'
2.c(75): error C25: syntax error near '}'
2.c(76): error C25: syntax error near '=='
2.c(76): error C7: compilation aborted
Target not created.
Build Time Elapsed:00:00:00

国学芯用 发表于 2024-11-8 17:14:55

{:5_284:}语法错误,去看冲哥视频,按部就班的跟着他学习
视频教学:《32位8051单片机原理及应用》,一等奖2万, 送实验箱; 冲哥版 - 视频教学,《单片机原理及应用》教学改革及实战技术交流会,本版限制发帖 国芯技术交流网站 - AI32位8051交流社区https://www.stcaimcu.com/forum.php?mod=viewthread&tid=323

邮箱 发表于 2024-11-8 17:16:23

写一句编译一次,就不会不知道错误在哪了

小坤 发表于 2024-11-8 17:25:22

怎么这么多多{:5_313:};写错的啊

soma 发表于 2024-11-8 17:25:33

感觉c语言要在学一下了

江上酒酒 发表于 2024-11-8 17:26:41

小坤 发表于 2024-11-8 17:25
怎么这么多多;写错的啊
开始没错误,最后我大改了一下,全是错误

小坤 发表于 2024-11-8 17:29:33

提示 这个 < ;>处   把大写 打开 写 ; 吧

wlhet 发表于 2024-11-8 17:45:47

这太具体了
页: [1] 2
查看完整版本: 发现错误