我认为你的接线错了。74LS273的1D~8D为数据输入端,1Q~8Q为数据输出端,常用作数据锁存器,地址锁存器。数码管是最后的显示器件,没道理接在D0-D7。
建议将数码管的八段直接接在P1端口上,或者接在P0加上拉电阻上,会简单得多。
unsigned char code Select[]={0x01,0x02,0x04,0x08,0x10,0x20};//位选定义
unsigned char code Led_Codes[]= //数码管字符表
{
0xc0,0xf9,0xa4,0xb0,0x99, //0-4
0x92,0x82,0xf8,0x80,0x90, //5-9
0x88,0x83,0xc6,0xa1,0x86, //A,b,C,d,E
};
for(i=0;i<4;i++)
{
P3=0;
P1=Led_Codes[Dat[i]];//段选
P3=Select[i];//位选
for(j=1000;j>0;j–);
}
在数码管上动态显示数字
从内存变量,其值为5 开始,在接口仪操作箱中的两个数码管上动态显示数字,即
55-》66-》77-》88-》99-》00-》。。。。。