微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > keil调试程序(52单片机)出现contains an incorrect path 怎么解决?

keil调试程序(52单片机)出现contains an incorrect path 怎么解决?

时间:10-02 整理:3721RD 点击:
     //数码管显示从0到9999
//程序员;
//时间:2013-7-17
#include<reg52.h>
            
#define  xs0      0xc0   //xs0 显示0
#define  xs1      0xf9   //xs0 显示1
#define  xs2      0xa4  //xs0 显示2
#define  xs3      0xb0  //xs0 显示3
#define  xs4      0x99  //xs0 显示4
#define  xs5      0x92  //xs0 显示5
#define  xs6      0x82  //xs0 显示6
#define  xs7      0xf8  //xs0 显示7
#define  xs8      0x80  //xs0 显示8
#define  xs9      0x90  //xs0 显示9
#define  p         P1
          sbit p4=P3^4;//第四位
    sbit p3=P3^5;//第三位
    sbit p2=P3^6;//第二位
    sbit p1=P3^7;//第一位   
    delay()           
   {
       int a,b,c;
    for(a=0;a<=1000;a++)
    {
        for(b=0;b<=110;b++)        
        c=0;
    }
   }
       void xs(int a)
{  
   switch ( a);   
     {
     case 0: p=xs0;break;
     case 1: p=xs1;break;
     case 2: p=xs2;break;
           case 3: p=xs3;break;
     case 4: p=xs4;break;
     case 5: p=xs5;break;
     case 6: p=xs6;break;
     case 7: p=xs7;break;
        case 8: p=xs8;break;
     case 9: p=xs9;break;
         }
  }
void main()
{
int g,s,q,m,n;
p=0;
    p2=0;
p3=0;
p4=0;
delay();
int a,b,c,d,e,f;
for(a=0;a<=9999;a++)
    {
        g=a%10;
     s=a/10%10;
     b=a/100%10;
     q=a/100;
     for(m=0,m<=100;m++)
     {
     for(n=0;n<=110;n++)
     {   p4=1;
         p3=0;
      p2=0;
      p1=0;
      void xs(q);
      p4=0;
         p3=1;
      p2=0;
      p1=0;
      void xs(b);
      p4=0;
         p3=0;
      p2=1;
      p1=0;
      void xs(s);
      p4=0;
         p3=0;
      p2=0;
      p1=1;
      void xs(g);

     }
     }
   }  
  
}

你数码管显示为什么不用数组呢?宏定义,不累么?

#include<reg52.h>
sbit dula=P3^1;
sbit wela=P3^0;
unsigned char code duan[]={0xC0, 0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,};
unsigned char code wei[]={};
void delay(unsigned int i)
{
        unsigned int m,n;
        for(m=i;m>0;m--)
                for(n=120;n>0;n--);
}
void main()
{
        dula=0;
        wela=0;
        while(1)
        {
         P0=0x00;
         dula=1;
         dula=0;
         delay(1);

         P0=0xff;
         wela=1,
         wela=0;
        }
}

明显小编是网上当的程序,很简单,自己编就好了,还比这个简单!

我也想知道

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top