void main(){ unsigned char i,j; while(1) for (i=0; i<8; ++i) { P0=DIG_CODE[i]; //发段码 P2=i<<1; //发位选 for (j=0; j<100; ++j); //延时 }}
延时的位置放错了,导致当前位选择为下一次服务了。