173 2438 5004
KEROS加密芯片——品牌直销 | 免费样品 | 技术支持
当前位置:网站首页 > 资讯中心 正文 资讯中心

单片机怎样显示数字信号

htxw 2023-03-15 资讯中心 26 ℃

单片机两位数码管显示数字

#includereg51.h

#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,dat=29;

void t0isr() interrupt 1

case 0:P2=0x02;P0=distab[dat/10];

break;

case 1:P2=0x01;P0=distab[dat%10];

TMOD=0x01;

TH0=(65536-5000)/256;

TL0=(65536-5000)%256;

TR0=1;

ET0=1;

EA=1;

while(1);

}

分类

数码管也称LED数码管,不同行业人士对数码管的称呼不一样,其实都是同样的产品。按发光二极管单元连接方式可分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管,共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮,当某一字段的阴极为高电平时,相应字段就不亮。

以上内容参考:百度百科-数码管

单片机试验数码管上如何显示数字

解决方法:

试验数码管上显示数字( 单片机直接实现位选 共阴极) 。

解决方式:

连接方法:P0与J12 用8PIN排线连接 P1与JP16 用排线连接 。

代码:

#includereg52.h

#define uint unsigned int

#define uchar unsigned char

void delay(uint z)

{

uint x,y;

for(x=z;x0;x--)

{

for(y=0;y113;y++)

{

}

}

}

unsigned int code dbit[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdF,0xbF,0x7F};

unsigned int code num[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};

void main()

{

while(1)

{

P1=dbit[4];

P0=num[9];

}

}

位定义

#includereg52.h

#includeintrins.h

#define uint unsigned int

#define uchar unsigned char

sbit LSA=P2^2;

sbit LSB=P2^3;

sbit LSC=P2^4;

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

void delay(uint z)

{

uint x,y;

for(x=z;x0;x--)

{

for(y=0;y113;y++)

{

}

}

}

void main()

{

while(1)

{

LSA=0;

LSB=0;

LSC=0;

P0=num[6];

delay(2);

LSA=1;

LSB=0;

LSC=0;

P0=num[6];

delay(2);

}

}

//让八个数码管全部亮并且从0~9循环

#includereg52.h

#includeintrins.h

#define uint unsigned int

#define uchar unsigned char

uchar num;

uchar wnum=0x00;

uchar code dbit[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//段选,选择要显示的数字

//uchar code wnum[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdF,0xbF,0x7F};//八位数码管

void delay(uint z)

{

uint x,y;

for(x=z;x0;x--)

{

for(y=0;y113;y++)

{

}

}

}

void main()

{

P1=wnum;

while(1)

{

for(num=0;num10;num++)

{

P0=dbit[num];

delay(500);

}

}

}

51单片机的共阴数码管怎么显示数字(c语言)知道

共阴极数码管也就是说,当控制信号为1时该段LED点亮,8段数码管的数字0~9定义为:

3FH,06H,5BH,4FH,66H

;01234

6DH,7DH,07H,7FH,6fh

;56789

以下为简易8路抢答器的例程:

#includereg51.h

#define

uchar

unsigned

char

uchar

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

sbit

rstkey=P2^2;

sbit

speaker=P2^0;

void

delay()//延时约400毫秒

{

uchar

i,j;

for(i=0;i200;i++)

for(j=0;j250;j++);

}

main()

{

uchar

i,key;

P2=0xff;

while(1)

{

i=0;

P1=table[i];

while(1)

{

key=P3;

if(key!=0)break;

}

switch(key)

{

case

0x01:i=1;break;

case

0x02:i=2;break;

case

0x04:i=3;break;

case

0x08:i=4;break;

case

0x10:i=5;break;

case

0x20:i=6;break;

case

0x40:i=7;break;

case

0x80:i=8;break;

default:break;

}

P1=table[i];//显示按下抢答器的号

P0=key;//显示按下键号的LED

while(1)

{

if(rstkey==0)break;//主持人按下复位键则重新开始

speaker=~speaker;//否则蜂鸣器报警

delay();

}

}

}

单片机怎样显示数字信号的介绍到此就结束了,感谢您耐心阅读,谢谢。

本文标签:单片机怎样显示数字信号

<