显示一个数码管0-9

显示一个数码管0-9,第1张

先上数码管的引脚图

首先,数码管的原理是,给数码管的某段加一个合适的电压,该段就会发亮。七段式数码管有七段加一点(DP),这种数码管有两种,一种是共阳极,这种接低电平时亮,另一种就是共阴极,就是楼主用的这种,通高电平亮。

数码管左边的引脚从上至下依次是接a,b,c,d,e,f,g,dp。要让数码管显示数字,就是需要指定部分亮,比如0,就是需要a,b,c,d,e,f这六段亮,也就是P00~P05为1,即P0=00111111=0x3f,而现在shuma[0]=0xc0是用来点亮0的,这两个是取反的关系,即~0xc0=0x3f,你当然可以直接设置shuma[0]=0x3f,就不需要取反了。至于为何要这样做呢,统计不亮的段比较方便,毕竟不亮的少嘛,也许只是习惯问题。

m清零。根据道客巴巴官网相关查询得知,数码管每隔一秒显示0至9数字的程序m就会清零。数码系统,又称为数字系统,是使用离散(即不连续的)的0或1来进行信息的输入,处理,传输、存贮等处理的系统。

/该程序是一个0-9单个数码管循环显示程序/

#include<reg52h>

#define uchar unsigned char

#define uint unsigned int

uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

uchar a,t;

sbit dula=P2^6;

sbit wela=P2^7;

void display(uchar a);

void delay(uint z);

void main()

{

dula=0;

wela=0;

t=0;

TMOD=0x01;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

EA=1;

ET0=1;

TR0=1;

while(1)

{

if(t==20)

{

t=0;

a++;

if(a==10)

a=0;

}

display(a);

}

}

void display(uchar a)

{

dula=1;

P0=table[a];

dula=0;

wela=1;

P0=0xfe;

wela=0;

P0=0xff;

delay(1);

}

void timer0()interrupt 1

{

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

t++;

}

void delay(uint z)

{

uint x,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

假设你的是共阳极数码管,P0接数码。按键接P2^0;

#include<reg52h>

typedef unsinged int uint;

sbit key=P2^0;

unsigned char tab[]={0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

void denay(uint x)

{

uint i,j;

for(i=x;i>0;i--)

for(j=110;j>0;j--)

}

void main()

{

uchar a;

while(1)

{

P0=tab[a];

if (key1==0)

{delay(10);

if(key==0)

{

while(!key1);

a++;

if(a==10) a=0;

}

}

}

1、新建项目,做好准备。

2、数码管段选表。

3、延时函数。

4、uchar i; 变量i;wk = 1;打开位选,P0 = 0xf7;1111 0111第4位数码管显示,wk = 0;关闭位选。

5、while(1) //死循环效果{} 。

6、dk = 1;//打开段选,P0 = leddata[i];,dk = 0;//关闭段选,delay(100);//延时效果。

7、选择效果,限制i值的循环范围。

以上就是关于显示一个数码管0-9全部的内容,包括:显示一个数码管0-9、数码管每隔一秒显示0至9数字的程序、数码管显示数字0~9的C程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9285066.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存