用AT89C51单片机控制两位8段LED数码管采用动态显示的方式显示29

设计要求 1画出硬件电路图 2设计程序 跪求答案
2025-03-17 11:09:04
推荐回答(4个)
回答1:

#include

#define uchar unsigned char;

uchar distab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00};  //0到f

uchar number;

void t0isr() interrupt 1

{

TH0=(65536-5000)/256;

TL0=(65536-5000)%256;

number++;

if(number>1)number=0;

switch(number)

{

case 0:P2=0x02;P0=distab[2];

break;

case 1:P2=0x01;P0=distab[9];

break;

default:break;

}

}

main()

{

TMOD=0x01;

TH0=(65536-5000)/256;

TL0=(65536-5000)%256;

TR0=1;

ET0=1;

EA=1;

while(1);

}

回答2:

先定义位选引脚
sbit wei2=P2^0
sbit wei1=P2^0
sbit wei2=P2^1
再定义0.5ms的延时时间
于是
wei1=1;
P1=代表2的数码值
延时
wei1=0;
显示9原理一样!
如果想要具体电路图个程序留下邮箱

回答3:

回答4:

有点难