proteus中数码管不显示

#include<reg51.h> unsigned char count=0; //定义中断次数计数器,count unsigned char second=0; //定义秒计数器,second unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //定义显示字模数组并赋初值table[ ] timer0() interrupt 1 //T0中断函数声明 { count++; //count+1 if (count==20) { count=0; second++; //若count==20,count清零,second增1 } if(second==60) second=0; //若second =60,second清零 P0=table[second/10]; //P0与P2口分别显示count值 P2=table[second%10]; TH0=0x3c; //T0重装载计数初值 TL0=0xb0; } main() //主函数声明 { TMOD=0x01; //T0定时(50ms)方式1初始化 TH0=0x3c; //T0赋计数初值 TL0=0xb0; P0=table[second/10]; //P0与P2口显示"00"值? P2=table[second%10]; ET0=1; //启动T0 EA=1; //开中断 TR0=1; while(1); //循环 }这是代码
2026年09月24日 09:03
有2个网友回答
网友(1):

你的仿真图有错误,P0,P2口各接一个数码管,就直接连接好了,何必用这种总线呢,你又不会画,用总线要加网络标号的,那些网络标号不对。

程序没有问题,下图就是用你的程序仿真的结果。完全正确。

网友(2):

用错数码管,图用共阳的,因该用共阴的