四位七段数码管怎么接三极管做驱动电路啊,还有如何写一个c51程序实现分和秒的动态扫描啊?

这样四个管子都可以用上... 这样四个管子都可以用上 展开
 我来答
hbktsll
2011-06-14 · TA获得超过374个赞
知道小有建树答主
回答量:654
采纳率:0%
帮助的人:357万
展开全部
第1,用NPN三极管(比如9012)做数码管列输入驱动
第2,用NPN或者PNP三极管(随你选)做数码管行输入驱动
第3,#include<reg52.h>

#define uint unsigned int

#define uchar unsigned char

sbit _led=P2^7;

sbit key1=P2^0;

sbit key2=P2^1;

sbit key3=P2^2;

uchar num=0,temp=0,count=0;

uchar aa;

uchar hour,min,sec;

uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

void delay(uint z);

void display(uchar a,uchar b,uchar c,uchar d,uchar e,uchar f,uchar aa);

void read_key();

void led();

void time_change();

/****************** 主函数 *******************/

void main()

{

P2=0xff;

hour=12;

min=0;

sec=0;

TMOD=0x11;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

TH1=(65536-50000)/256;

TL1=(65536-50000)%256;

EA=1;

ET0=1;

ET1=1;

TR0=1;

TR1=1;

aa=0xff;

while(1)

{

time_change();

display(table[hour/10],table[hour%10],table[min/10],

table[min%10],table[sec/10],table[sec%10],0xff);

}

}
更多追问追答
追问
什么啊,void   delay(uint z);

void display(uchar a,uchar b,uchar c,uchar d,uchar e,uchar f,uchar aa);

void read_key();

void led();

void time_change();

都没写,详细点再加30分,说道做到,绝不食言
追答
我晕,我知道你要显示什么啊?我不知道怎么写?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式