历史上的今天
今天是:2025年02月15日(星期六)
2019年02月15日 | (C51学习二)点亮数码管
2019-02-15 来源:eefocus
1.什么是数码管

如图所示,这是二位的数码管
一个数码管,要有8个LED灯控制他显示是什么数字,7个LED控制数字,1个LED控制小数点。如上图
2.共阴极和共阳极

如上图,对于一个数码管,共阴极就是 组成数码管的二极管的阴极是连在一起的,想点亮数码管,就在单片机的对应 I/O 口给高电平。
共阳极就是 组成数码管的二极管的阳极是连在一齐的,想点亮数码管,就在单片机的对应 I/O 口给低电平。
3.让数码管显示数字原理

如上图,abcdefg分别控制数码管的8条led灯,如我要显示数字 8 ,则要把abcdefd全点亮,如上图右边,就是把abcdefg都置高电平。
3.段选和位选

如上图所示,上面八根线(a,b,c,d,e,f,g,dp)控制数码管显示的数字是多少,叫做段选
下面四根线,控制四个数码管中,哪一个数码管被点亮,叫做位选
位选的意义:
由第一点的知识可知,控制一个数码管的亮灭,需要8个LED灯,换言之,控制一个数码管,就要用掉8个 I/O口,控制5个数码管就要用掉40个I/O口,
I/O口的资源没有那么多,所以引入了位选,有了位选以后,只需要8个I/O口控制数码管的段选(数码管显示什么数字)就好,至于让哪一个数码管亮,就由位选来做。
4.用锁存芯片74HC573实现段选和位选。

如上图所示,是一片74HC573芯片,这片芯片的作用是锁住输入的值,(D1~D8为输入端,Q1~Q8为输出端),C段(就是上图的11引脚)为片选段。
当C段为1时,输出端=输入端,当C段为0时,当输入端改变,输出端也不会改变了,达到了锁存的作用

如图所示,上图是共阴数码管的原理图,从原理图可知,一块74HC573控制段选,另一块74HC573控制位选,分别接到最小系统的P2.6和P2.7引脚
由于是共阴极,所以位选置0时,数码管会亮
5.代码实现
我们显示数字时,为了方便,我们可以下载一个 数码管计算器 ,百度数码管计算器即可。可以快速显示 响应数字怎么引脚怎么设置

如上图,显示3 就是把对应8位 I/O口组 设置为 0x4F
#include
sbit WE=P2^7;
sbit DU=P2^6;
void main()
{
DU=1;
P0=0x4f; //让数码管显示数字3
DU=0;
WE=1;
P0=0xfe;//让第一个数码管点亮,1111 1110
WE=0;
while(1);
}
上一篇:(C51学习三)按键
下一篇:(C51学习一)如何点亮led灯
史海拾趣
|
本帖最后由 paulhyde 于 2014-9-15 09:34 编辑 2009年电子设计大赛赛前热门元器件搜索(欢迎上传),对本版友重大贡献者,可以获得30~100芯币! 基本元器件参考 类型 型号 参数 特点 普通运放 OP07 低噪声,高精度,500mW,单路 ...… 查看全部问答> |
|
用的是飞思卡尔的单片机,里面是没有时钟模块的。最麻烦的问题是如果掉电了还要时钟模块继续工作,这样的话是不是肯定要增加干电池? 还有,如果总是发送时间信号给LCD现实的话,单片机是不是忙的过来?… 查看全部问答> |
|
如题,有没有相应的事件呢? c#下用这个开源的OpenNETCF.Desktop.Communication可以方便的获得。 在vc++下怎么操作呢? 我重新编译了OpenNETCF.Desktop.Communication这个,用com的方法没有实现成功。 虽然能生产tlb文件,但是用com方法调用的 ...… 查看全部问答> |
|
在创建wince平台时,编译时,出现SMDK2410 - 1 error(s), 0 warning(s),在build.log出现:\'findstr\' 不是内部或外部命令,也不是可运行的程序 或批处理文件。… 查看全部问答> |
|
向高手求教EVC4连接不上模拟器的问题,有详细说明,急盼eeworld上的高手帮忙!!!!! 我的WinCE开发平台的环境设置: PC操作系统:Windows Xp home; evc环境:evc4+sp3+sp4+ActiveSync4.5+standardsdk+standardsdk4.2+ppc2003sdk+Windows mobile second edtion image+EmuAsConfig; 问题一:一开始创建工程的时候,选择ppc2003的Appwi ...… 查看全部问答> |
|
W77E58 chip 程序中我将SP设置为#60h,程序可以执行 但我将sp设置成#0C0h后,软件仿真可以全速,但硬件仿真,所有函数调用均不能正常返回,ram对应区域为FF,函数返回地址没有入栈 大家分析下可能的原因,谢谢… 查看全部问答> |
|
本帖最后由 paulhyde 于 2014-9-15 09:14 编辑 谁有lm3s9792 PCB板啊?谁有lm3s9792 PCB板啊?谁有lm3s9792 PCB板啊? … 查看全部问答> |
|
本帖最后由 qwqwqw2088 于 2017-4-17 10:19 编辑 本文介绍的是有关锂电池组保护板均衡充电基本工作原理,在采用单节锂电池保护芯片设计的且具备均衡充电能力的锂电池组保护板,示意图如图1所示。其中:1为单节锂离子电池;2为充电过电压分流放电 ...… 查看全部问答> |




