51 单片机简易交通信号灯led亮,数码管不亮

#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit duan=P2^6;
sbit wei=P2^7;
unsigned char code table_wei[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
unsigned char code table_duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void delay(uint m)
{
uint x,y;
  for(x=m;x>0;x--)
  for(y=110;y>0;y--);
  }
 void yan(uint a)
 {
 uint z;
  for(z=a;z>0;z--)
 {
 duan=1;
 P0=table_duan[z];
 duan=0;
 delay(1000);
 }
 }
 void main()
{
uint i;
while(1)
{
P1=0x18;
delay(3000);
P1=0x10;
delay(2000);
P1=0xc0;
delay(3000);
P1=0x80;
delay(2000);  
{
wei=1;
P0=0x55;
wei=0;
for(i=0;i<250;i++)
    {
    yan(5);    
    }
}
}
}

数码管要先设置位选,然后再设置段选,没看到你设置位选呢

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632