C51编程8-数码管(工作原理2)

最新更新时间:2022-06-23来源: eefocus关键字:C51  编程  数码管 手机看文章 扫描二维码
随时随地手机看文章

从共阴与共阳的数码管上看,对数码管的控制与控制LED一样,只需要控制数码管的两端高低电平(位选引脚与段选引脚的电平),数码管便可以被点亮。


静态显示与动态显示


静态显示:各数码管处于恒电压或者恒电流状态,硬件电路复杂成本高;


动态显示:各数码管被分时选通,利用人的视觉暂留特性显示,成本低,需要占用CPU运行时间。


驱动电路


虽然数码管的使用只需要设置控制位选与段选引脚,便可以使其工作。但数码管工作需要电流比较大,51单片机的P0双向I/O(没有高电平输出),而P1~P3为准双向I/O口(驱动电流很小)。这些端口不能直接驱动数码管,都需要外接上拉电阻提供电流给数码管。


下图的数码管控制电路,为P0口接上拉电阻,连接到段选引脚,位选引脚连接到P2口。

如果是八位数码管,位选占用8个I/O,而段选占也用8位 I/O,单片机的一半被占用了,I/O比较紧张。可以通过使用74HC138(38译码器),省下一些I/O口;可以通过74HC245(八路信号收发器)对数码管进行分时复用;也可以将两者结合进行使用(74HC138+74HC245)。

 

总结:


1)数码管显示有静态显示与动态显示;


2)单片机中需要有驱动电路才能使用数码管;


3)74HC138的使用可以省下I/O口;


4)74HC245的使用,将会更加合理利用I/O资源。

关键字:C51  编程  数码管 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic614501.html

上一篇:C51编程7-数码管(工作原理1)
下一篇:C51编程9-数码管(显示)

推荐阅读

C51语言中断函数结构,C51中断函数的写法
1、一、中断允许控制CPU 对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器IE 控制的。EX0(IE.0),外部中断 0 允许位;ET0(IE.1),定时/计数器 T0 中断允许位;EX1(IE.2),外部中断 0 允许位;ET1(IE.3),定时/计数器 T1 中断允许位;ES(IE.4),串行口中断允许位;EA (IE.7), CPU 中断允许(总允许)位。80C51 单片机定时/计数器的工作由两个特殊功能寄存器控制。TMOD 用于设置其工作方式;TCON 用于控制其启动和中断申请。一、工作方式寄存器 TMOD工作方式寄存器 TMOD 用于设置定时/计数器的工作方式,低四位用于。2、 T0,高四位用于 T1。其格
发表于 2022-07-01
C51最小单片机系统
1.芯片部分其中P1是给烧写器留的接口,J3和J4是留的排插,用于拓展模块,比如万年历,温度照度传感器,语音播报等。2.独立键盘部分这里参考我的STC12C5A60S2的数据手册,P0口已经有内部上拉电阻,所以外部不需要再接电阻,直接接地。3.稳压电路9V直流进5V直流出4.蜂鸣器部分选用封装时候注意8550和8050的一三脚别搞错 选TO-220封装。5.LED部分只留了两个灯,足够用,不够的可以用其他空的IO口照着这个画。电阻560欧姆灯的亮度会比较亮,可以选更大的阻值 10K 20K都可。6.晶振部分选用11.0592M的晶振,这个频率的晶振用于串口通信合适,波特率误差最小。7.复位按键部分C3是电解电容,有正负,耐压最好在2
发表于 2022-07-01
<font color='red'>C51</font>最小单片机系统
C51 DS1302芯片+lcd12864 显示时间
1.原理图1302芯片部分lcd12864部分2.代码部分config.h#ifndef __CONFIG_H#define __CONFIG_H#include <reg51.h>#include "lcd12864.h"#include "intrins.h"#define uchar unsigned char#define uint unsigned int#endiflcd12864.c#include"lcd12864.h" void lcdinit(void) //初始化LCD{ write(0,0x30); //功能设定 write(0,0x0c
发表于 2022-07-01
<font color='red'>C51</font> DS1302芯片+lcd12864 显示时间
C51单片机 写一个外部中断(入门单片机)
代码部分void main(){ /*---------------EA,IT,EX必须写-------------*/ EA=1; //开启总中断 IT1=1; //中断触发模式 //=0为低电平触发,=1为下降沿触发 EX1=1; //外部中断允许位 while(1) { led1=0; }}void int1() interrupt 0{ led=~led1;}解释:1.外部中断(按键中断)最最重要的部分就是EA,IT,EX三条语句,这三条是必不可少的。2.EA是中断总开关,类似家里电闸的总闸,总闸下面有外部中断,内部中断,串口中断,AD中断等,相当于家里各个房间的分闸,EA=1就是把总闸
发表于 2022-07-01
<font color='red'>C51</font>单片机 写一个外部中断(入门单片机)
对于c51外部中断和程序调用的理解
首先介绍一下C51外部中断的基本概念中断的优点:1、实时处理。需要CPU立即做出相应或处理。2、异常处理。运行过程中,出现断电、程序出错等问题,就需要CPU对故障源进行处理。3、提高效率。采用中断技术可以大大提高CPU的运行效率。中断源:C51单片机有5个中断源(2个外部中断、2个定时器中断和一个串口中断)。对中断的配置操作,主要通过控制三个寄存器就可以(中断允许寄存器IE)、定时器控制寄存器(TCON)和中断优先级寄存器(IP)。即通过控制EA EX IT 的直接赋值,即可调用中断服务程序注:中断服务程序与while(1)中的程序调用是不一样的中断服务函数:在CPU接收到中断后,会执行相应中断的中断服务函数。而C51的中断服务函数
发表于 2022-06-29
对于<font color='red'>c51</font>外部中断和程序调用的理解
C51单片机的外部中断设计1s定时器
51单片机给我们提供了2个计时器中断,分别是计时器0和计时器1,他们对应的优先级分别是1和3,开启计时器并允许其中断后,计时器会从给定的初始值开始,每个指令周期加1,直到加到65535,再加一时计时器溢出,计时器此时会进入中断,并执行中断服务函数。虽然书上讲的很清楚了,但实际使用还是有些许差别,我自己是这样理解的65536-50000的由来假设我使用的单片机的晶振为12MHZ,其机器周期是1us,即每1us产生一次计数如果设计一个1s的定时器,理论上是需要1*10^6个机器周期,但定时器T0只能对机器周期能进行最大65536次计数,很明显已经超过了,并不能直接采用T0的默认值转下思维模式,取个65535之内的整数值,经过简单倍数关系
发表于 2022-06-29
用<font color='red'>C51</font>单片机的外部中断设计1s定时器
小广播
实战 培训 开发板 精华推荐

何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2022 EEWORLD.com.cn, Inc. All rights reserved