单片机同一I⼀0口,用两片74HC573分别控制数码管段,位选,如何编程使数码管点亮!

2025-01-05 15:41:35
推荐回答(2个)
回答1:

#include
#include
#define uint unsigned int
#define uchar unsigned char
uchar code TAB[]={0x06,0x5b,0x4f,0x66,0x6d,0x7d};

sbit dula=P3^6;
sbit wela=P3^7;
uchar i,temp,j;
void delay(uint z);
void main()
{
while(1)
{
temp=0xfe;//初始化显示位置
for(i=0;i<6;)
{
dula=1;
P0=TAB[i];
dula=0;
i++;
wela=1;
P0=temp;
temp=_crol_(temp,1);
wela=0;
delay(3);
P0=0x00;//proteus仿真中消隐要这样写。实物应该用P0=0xff;
}
}
}

void delay(uint z)
{
uint i,j;
for(i=z;i>0;i--)
for(j=110;j>0;j--);
}

回答2:

与正常的比较,就是多一次锁存的操作