c语言控制数码管显示时间,单片机 控制 数码管显示

本文详细介绍了LED数码管的类型、内部结构,包括共阳极和共阴极数码管的工作原理。数码管广泛应用于各种显示场景,驱动方式分为静态和动态驱动,并通过Arduino控制数码管显示的时间示例,解释了如何使用C语言实现数码管显示数字。文中还提到了数码管的限流电阻设置以及如何编写程序驱动数码管依次显示0到9。
摘要由CSDN通过智能技术生成

bb80ad9ce954

常见LED数码管

LED数码管(LED Segment Displays)简介

数码管也称LED数码管,是由多个发光二极管封装在一起的“8”字型的器件。

按发光二极管单元连接方式可分为`共阳极数码管`和`共阴极数码管`。

bb80ad9ce954

内部连接原理图

共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管,共阳数码管在应用时应将公共极COM接到高电平,当某一字段发光二极管的阴极为低电平时,相应字段就点亮,当某一字段的阴极为高电平时,相应字段就不亮。

共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管,共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮,当某一字段的阳极为低电平时,相应字段就不亮。

led数码管广泛应用于仪表、时钟、车站、家电等场合。常用段数一般为7段,有的另加一个小数点,当然也可以完全定制。选用时应注意产品尺寸颜色、功耗、亮度、波长等。

驱动电路

数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。

静态显示驱动

静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5×8=40根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。

动态显示驱动

数码管动态显示是单片机中应用最为广泛的显示方式之一.

动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是哪个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。

通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。

Arduino控制数码管显示示例

今天实验中要用的数码管型号为:5161AS,是一款0.56英寸的红色共数码管 。

bb80ad9ce954

电路原理图

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值