数码管动态显示

该文介绍了一个使用C51单片机实现共阴极LED数码管动态显示字符‘L2’的项目。通过向P3口送入位码选择数码管,并在P2口输出字模,实现了字符的交替显示。代码中定义了LED字模数组,并利用循环和延时函数实现动态刷新。
摘要由CSDN通过智能技术生成

项目文件

文件

关于项目的内容知识点可以见专栏单片机原理及应用 的第四章 数码管动态显示

 


采用共阴极LED数码管,采用动态显示显示字符"L2"

在这里插入图片描述
图中的双联LED数码管相当于两个并联的数码管

在这里插入图片描述

下面先将位码(也就是选择哪个亮的)0x02 | 0x01 先后送入 P3口依次使能

共阴极LED数码管的位选是低电平来选择的

在这里插入图片描述

然后赋值P2端口,0x38是L,共阴极。0x5b是2。

流程图
在这里插入图片描述
在这里插入图片描述

先给1晶体管,赋值为led_mod[0] 是L
再给2晶体管,赋值为led_mod[1]是2

在这里插入图片描述

 


代码如下:

#include <REG51.H>
char led_mod[] = {0x38,0x5B};		//LED字模“L2”
void delay(unsigned int time);

void main() {
	char led_point = 0;
   	while (1) { 
		P3 = 2 - led_point; 		//输出LED位码
		P2 = led_mod[led_point];	//输出字模	
		led_point = 1 - led_point;	//刷新LED位码
		delay(30);			
    }
}

void delay(unsigned int time){ 
	unsigned int j = 0;
	for(;time>0;time--)
		for(j=0;j<125;j++);
}


结果:

在这里插入图片描述

运行视频:

C51单片机——数码管动态显示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值