数码管:3位6脚的数码管分析和编码

博客介绍了数码管控制方案,常规1位数码管需8个IO或用扩展芯片。控制3位数码管,直控需24个IO,用扩展芯片需2 - 3个IO。而3位6脚数码管基于查理复用算法,只需6个IO。还进行了原理分析,并给出基于STM8库函数的实现代码。

▪ 基本简介

一个1位数码管共有8段:ABCDEFG+小数点,如下图:

按照我们常规的设计方案一个 IO 口控制一个段,一个1位数码管那么就需要8个IO。当然我们也可以使用扩展 IO 芯片(例如 74HC164、74HC595),那么这种方案就占用单片机2~3个IO和一个扩展IO芯片。

 

现在我们需要控制一个3位的数码管:

  • 采用IO口直控:那么需要单片机 IO 口24个
  • 采用扩展 IO 芯片控制:那么需要单片机 IO 口 2~3 个

 

但是市面上有些 3 位的数码管只有 6 个接口,如下图:

 

这种元件就不是我们常规的控制方法了,这种是基于 查理复用算法 封装的数码管,只需要 6 个IO就能控制 3位数码管(3*8 个LED灯)。所以在使用这个元件时,你需要先了解查理复用算法,具体请参考我的《复用 IO 口:查理复用算法(Charlieplexing)》文章,或者直接百度搜索查看:查理复用算法(Charlieplexing)。

 

 

▪ 原理分析

不同厂家对于3位6脚的数码管可能设计不同的电路和针脚定义,具体咨询购买的厂家或其数据手册。这里我们取其中一种作为例子讲解,其数据手册图如下:

 

根据上面的数据手册,我们画出其对应的原理图,如下:

如上图所示,同时基于查理复用算法,我们可以分析出:

  • 数码管2脚高电平,3脚低电平,其余脚高阻态;那么 1A 会被点亮(Dig.1 数码管的第一个二极管灯亮)
  • 数码管1脚高电平,4脚低电平,其余脚高阻态;那么 DP2 会被点亮(Dig.2 数码管的小数点二极管灯亮)
  • .....
<
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值