单片机如何驱动数码管?

 我来答
渲指流年
2012-03-16
知道答主
回答量:14
采纳率:0%
帮助的人:7万
展开全部
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar code tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
sbit dula1=P2^0;
sbit dula2=P2^1;
uchar tt,shi,ge;
uchar aa;

void display();

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

void main()
{
// dula1=1;
// dula2=1;
TMOD=0x10;//设置定时器1为工作方式1
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
EA=1;//开总中断
ET1=1;//开定时器1中断
TR1=1;//启动定时器1
aa=0;

while(1)
{
if(tt==5)
{
tt=0;
aa++;
if(aa==100)
{

aa=0;
}
shi=aa/10;
ge=aa%10;

}
display();

}

}
void display()
{
dula1=1;
//dula2=1;
P0=tab[ge];
dula1=0;
delay(2);

// dula1=1;
dula2=1;
P0=tab[shi];
dula2=0;
delay(2);
}
void exter0() interrupt 3
{

TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
tt++;

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
archer2009
2012-03-14
知道答主
回答量:20
采纳率:0%
帮助的人:8.5万
展开全部
数码管各段的引脚连接P1口,数码管如果共阳,就输出低电平。共阴的相反
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sxdq000
2012-03-15
知道答主
回答量:6
采纳率:0%
帮助的人:3.5万
展开全部
分为动态,静态,,驱动方式,有IC驱动,和单片机直接驱动。

目前比较有优势的驱动芯片有天微公司的,,性价比超高。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式