实现数码管、八位数码管以及结合38译码器的数码管显示

一、数码管

1、选择数码管

2、共阳数码管,接高电平

3、数码管有八个LED灯组成的

数字0:0xc0   1100 0000

数字1:0xf9    1111 1001

二、验证数字0

蓝色表示低电平,红色表示高电平

三、数码管显示

1、编写代码

2、.hex文件烧录至仿真单片机中,运行proteus仿真

数码管

四、八位数码管动态显示

1、位选是选择哪一个数码管,段选是数码管显示什么数值

2、编写代码

#include <reg51.h>

#define uchar unsigned char
#define uint unsigned int
	
uchar code seg[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
uchar code place_code[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
uchar cache[8]={0,0,0,0,0,0,0,0};
void delay(int ms)
{
	uint i,j;
	for(i=ms;i>0;i--)
	{
		for(j=120;j>0;j--);
	}
}
void transfer(uchar a,b,c,d,e,f,g,h)
{
	cache[0]=a;
	cache[1]=b;
	cache[2]=c;
	cache[3]=d;
	cache[4]=e;
	cache[5]=f;
	cache[6]=g;
	cache[7]=h;
}
void seg_show()
{
	uchar i;
	for(i=0;i<8;i++)
	{
		P3=place_code[i];
		//P2=0xff;
		P2=seg[cache[i]];
		delay(300);
		
	}
}
void main()
{
	transfer(2,0,2,4,0,5,1,2);
	while(1)
	{
		seg_show();
	}
}

3、.hex文件烧录至仿真单片机中,运行proteus仿真

8位数码管

五、结合74LS138的8位数码管

1、利用三八译码器控制位选仿真图

2、引脚自动编号的操作

将鼠标放置引脚上,键盘在英文状态下按a,输入NET=A#,按【OK】

选择需要编号的引脚,出现等号好左击即可按照顺序编号

3、编写代码

#include <reg51.h>

#define uchar unsigned char
#define uint unsigned int
	
uchar code seg[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
//uchar code place_code[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
uchar code place_code[8]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07};//利用三八译码器控制位选
uchar cache[8]={0,0,0,0,0,0,0,0};
void delay(int ms)
{
	uint i,j;
	for(i=ms;i>0;i--)
	{
		for(j=120;j>0;j--);
	}
}
void transfer(uchar a,b,c,d,e,f,g,h)
{
	cache[0]=a;
	cache[1]=b;
	cache[2]=c;
	cache[3]=d;
	cache[4]=e;
	cache[5]=f;
	cache[6]=g;
	cache[7]=h;
}
void seg_show()
{
	uchar i;
	for(i=0;i<8;i++)
	{
		P3=place_code[i];
		//P2=0xff;
		P2=seg[cache[i]];
		delay(300);
		
	}
}
void main()
{
	transfer(2,0,2,4,0,5,1,2);
	while(1)
	{
		seg_show();
	}
}

4、与不用74LS138效果相同,但是用74LS128只需要三个引脚就可以控制8个引脚

74LS138控制8位数码管

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值