数码管循环数字显示器
- 格式:docx
- 大小:961.77 KB
- 文档页数:25
02实验二数码管动态显示程序设计数码管是一种常见的数字显示器件,通常由七段LED组成。
通过控制不同的LED亮灭状态,可以显示出0到9的数字和一些字母。
数码管通常被广泛应用于计时器、温度显示器等设备中,用于显示数字和一些特定的符号。
数码管的动态显示是指通过快速切换数码管显示的内容,从而实现多个数码管连续显示不同的数字。
这种显示方式使得数字的显示看起来像是连续变化的,给人一种流动的感觉。
在进行数码管动态显示的程序设计时,需要考虑以下几个方面:1.数码管的接口:数码管通常使用共阴极或共阳极的接口方式,需要根据实际的硬件接口进行相应的程序设计。
2.显示内容的切换:数码管需要显示不同的数字,需要通过程序控制数码管的显示内容。
可以通过数组或者其他数据结构来存储需要显示的数字,并通过循环,依次将不同的数字输出到数码管上。
3.显示周期的控制:数码管动态显示的关键是控制显示的刷新速度。
数码管的刷新速度通常以帧率进行表示,即每秒显示的帧数。
常见的数码管帧率为50Hz或60Hz,即每秒刷新50次或60次。
程序需要根据帧率来控制数码管显示的频率。
4.数码管的亮度控制:数码管的亮度通常通过PWM(脉宽调制)来控制,即快速开关数码管的亮灭状态,通过调整开关的占空比来控制数码管的亮度。
程序需要实现相应的PWM控制函数,可以通过改变PWM的占空比来控制数码管的亮度。
下面是一个简单的数码管动态显示的程序设计示例:```c++#include <arduino.h>//数码管引脚定义const int digitPins[] = {2, 3, 4, 5};const int segmentPins[] = {6, 7, 8, 9, 10, 11, 12}; //数码管显示的数字const int numbers[] =// abcdefg};//数码管显示的当前数字int currentNumber = 0;// 数码管显示的刷新速度,单位为msconst int refreshRate = 10;void setu//设置数码管引脚的模式for (int i = 0; i < 4; ++i)pinMode(digitPins[i], OUTPUT);}for (int i = 0; i < 7; ++i)pinMode(segmentPins[i], OUTPUT);}void loo//刷新数码管显示refreshDisplay(;//数码管显示的数字切换currentNumber = (currentNumber + 1) % 10; //延时delay(refreshRate);//刷新数码管显示的函数void refreshDispla//显示当前数字for (int i = 0; i < 4; ++i)digitalWrite(digitPins[i], LOW); setSegments(numbers[currentNumber]); delayMicroseconds(500);digitalWrite(digitPins[i], HIGH);}//设置数码管的段void setSegments(int segments)for (int i = 0; i < 7; ++i)digitalWrite(segmentPins[i], (segments >> i) & 1);}```该程序通过设置数码管引脚的模式来控制数码管的显示。
七段数码管显示数字电路学习 2008—11—02 15:15:18 阅读2837 评论0 字号:大中小CD4511是一个用于驱动共阴极 LED (数码管)显示器的 BCD 码—七段码译码器,特点如下:具有BCD转换、消隐和锁存控制、七段译码及驱动功能的CMOS电路能提供较大的拉电流.可直接驱动LED显示器.CD4511 是一片 CMOS BCD-锁存/7 段译码/驱动器,引脚排列如图 2 所示。
其中a b c d 为 BCD 码输入,a为最低位。
LT为灯测试端,加高电平时,显示器正常显示,加低电平时,显示器一直显示数码“8”,各笔段都被点亮,以检查显示器是否有故障。
BI为消隐功能端,低电平时使所有笔段均消隐,正常显示时, B1端应加高电平.另外 CD4511有拒绝伪码的特点,当输入数据越过十进制数9(1001)时,显示字形也自行消隐。
LE是锁存控制端,高电平时锁存,低电平时传输数据。
a~g是 7 段输出,可驱动共阴LED数码管。
另外,CD4511显示数“6”时,a段消隐;显示数“9”时,d段消隐,所以显示6、9这两个数时,字形不太美观图3是 CD4511和CD4518配合而成一位计数显示电路,若要多位计数,只需将计数器级联,每级输出接一只 CD4511 和 LED 数码管即可。
所谓共阴 LED 数码管是指 7 段 LED 的阴极是连在一起的,在应用中应接地。
限流电阻要根据电源电压来选取,电源电压5V时可使用300Ω的限流电阻。
用CD4511实现LED与单片机的并行接口方法如下图: (略)CD4511 引脚图其功能介绍如下:BI:4脚是消隐输入控制端,当BI=0 时,不管其它输入端状态如何,七段数码管均处于熄灭(消隐)状态,不显示数字.LT:3脚是测试输入端,当BI=1,LT=0 时,译码输出全为1,不管输入 DCBA 状态如何,七段均发亮,显示“8"。
它主要用来检测数码管是否损坏。
LE:锁定控制端,当LE=0时,允许译码输出. LE=1时译码器是锁定保持状态,译码器输出被保持在LE=0时的数值。
实验名称 LED数码管显示实验指导教师曹丹华专业班级光电1202班姓名陈敬人学号联系电话一、任务要求实验目的:理解LED七段数码管的显示控制原理,掌握数码管与MCU的接口技术,能够编写数码管显示驱动程序;熟悉接口程序调试方法。
实验内容:1.基础部分:利用C8051F310单片机控制数码管显示器。
利用末位数码管循环显示数字0-F,显示切换频率为1Hz。
2.提高部分:在数码管上显示0→199计数,计数间隔为0.5秒。
二、设计思路1.基础部分C8051F310单片机片上晶振为24.5MHz,采用8分频后为3.0625MHz ,输入时钟信号为48个机器周期,T1采用定时器工作方式1,单次定时最长可达1.027s,可以实现1s定时要求。
定时采用软件查询工作方式,利用JNB TF0, HERE实现。
置P0.6和P0.7端口为0,位选信号选定末位数码管。
通过MOVC A, @A+DPTR指令,利用顺序查表法取出显示段码数据。
寄存器R0自增1,并赋给A以取出下一个显示段码数据。
为减短代码长度,利用CJNE指令实现循环结构。
当寄存器R0增至0FH后,跳转至开头,重新开始下一轮显示。
2.提高部分定时方式及查表方式同基础部分,由于要实现三个数码管同时显示,因此采用动态扫描显示法。
三、资源分配1.基础部分P0.6: 位选信号端口P0.7:位选信号端口P1:输出段码数据R0:存放显示数据DPTR:指向段码数据表首 2.提高部分P0.6:位选信号端口P0.7:位选信号端口R0:存放个位显示数据 R5:存放十位显示数据 R6:存放百位显示数据 P1:输出段码数据DPTR: 指向段码数据表首四、流程图1.基础部分2.提高部分五、源代码(含文件头说明、语句行注释)1.基础部分;******************基础部分源代码***************************;Filename: test.asm;Decription: 末位数码管循环显示数字0-F,显示切换频率为1Hz。
一、实验目的1. 了解数字显示器的基本原理和分类。
2. 掌握数字显示器的设计方法和应用。
3. 学会使用数码管和LCD显示器进行数字显示。
4. 提高动手实践能力和问题解决能力。
二、实验内容1. 数码管显示实验2. LCD显示器显示实验三、实验原理1. 数码管显示原理:数码管是一种半导体发光器件,由若干个发光二极管(LED)组成,每个LED代表一个数码管的笔画。
通过控制LED的亮灭,可以显示不同的数字和字符。
2. LCD显示器显示原理:LCD显示器是一种液晶显示器,通过液晶分子的旋转控制光的透过与阻挡,实现图像的显示。
LCD显示器主要由液晶面板、背光源、偏振片、驱动电路等组成。
四、实验步骤1. 数码管显示实验(1)搭建电路:将数码管与AT89C51单片机连接,连接方式包括共阴极和共阳极两种。
(2)编写程序:使用C语言编写程序,实现数码管显示数字和字符。
(3)调试程序:使用Keil软件对程序进行编译和调试,观察数码管显示效果。
2. LCD显示器显示实验(1)搭建电路:将LCD显示器与AT89C51单片机连接,连接方式包括并行和串行两种。
(2)编写程序:使用C语言编写程序,实现LCD显示器显示数字和字符。
(3)调试程序:使用Keil软件对程序进行编译和调试,观察LCD显示器显示效果。
五、实验结果与分析1. 数码管显示实验结果:通过编写程序,数码管能够显示数字和字符,实现了实验目的。
2. LCD显示器显示实验结果:通过编写程序,LCD显示器能够显示数字和字符,实现了实验目的。
3. 分析:(1)数码管显示实验:在实验过程中,发现数码管的共阴极和共阳极连接方式不同,需要根据实际连接方式编写程序。
此外,为了提高显示效果,需要对数码管进行动态扫描显示。
(2)LCD显示器显示实验:在实验过程中,发现LCD显示器的并行和串行连接方式不同,需要根据实际连接方式编写程序。
此外,为了提高显示效果,需要对LCD显示器进行初始化和设置显示模式。
实验二七段数码管动态显示控制一、实验目的利用AT89S52和使用两位数码管显示器,循环显示两位数00-99。
其中P2.0和P2.1端口分别控制数码管的个位和十位的供电,当相应的端口变成低电平时,驱动相应的三极管会导通,+5V通过驱动三极管给数码管相应的位供电,这时只要P3口送出数字的显示代码,数码管就能正常显示数字。
二、实验要求1、使用两位数码管显示器,循环显示两位数00-99;2、具有电源开关和指示灯,有复位键;3、数码管动态显示,即扫描方式,每一位每间隔一段时间扫描一次。
字符的亮度及清晰度与每位点亮的停留时间和每位显示的时间内轮换导通次数有关。
三、实验电路四、实验器材AT89S52;动态扫描显示;共阳极数码管;电阻五、实验原理说明图1 AT89S52引脚图图2 共阳极七段数码管引脚图1AT89S52引脚图,说明如下:按照功能,AT89S52的引脚可分为主电源、外接晶体振荡或振荡器、多功能I/O 口、控制和复位等。
1.多功能I/O口AT89S52共有四个8位的并行I/O口:P0、P1、P2、P3端口,对应的引脚分别是P0.0 ~ P0.7,P1.0 ~ P1.7,P2.0 ~ P2.7,P3.0 ~ P3.7,共32根I/O线。
每根线可以单独用作输入或输出。
①P0端口,该口是一个8位漏极开路的双向I/O口。
在作为输出口时,每根引脚可以带动8个TTL输入负载。
当把“1”写入P0时,则它的引脚可用作高阻抗输入。
当对外部程序或数据存储器进行存取时,P0可用作多路复用的低字节地址/数据总线,在该模式,P0口拥有内部上拉电阻。
在对Flash存储器进行编程时,P0用于接收代码字节;在校验时,则输出代码字节;此时需要外加上拉电阻。
②P1端口,该口是带有内部上拉电阻的8位双向I/O端口,P1口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。
成绩课程设计说明书课程设计名称:电子技术课程设计题目:数码管循环数字显示器学院:电气与电子信息学院学生姓名:专业:电气工程及其自动化学号:指导教师:日期:2016年 7 月 4 日西华大学课程设计说明书数码管循环数字显示器摘要:本次课程设计是以电子技术为基础的数码管循环数字显示器,该设计实现了循环显示0~9十个数字。
电路主要是以四个数字集成电路和一个七段共阴数码管构成。
555定时器构成多谐振荡器作为电路的脉冲发生器,74LS161和74LS00中的一个与非门构成的计数器,实现对脉冲的计数和循环,最后是由74HC4511七段数码显示译码器和七段共阴数码管构成的译码显示部分,将电路的运行结果通过数码管显示出来。
关键词:循环显示,555定时器,多谐振荡器,计数器,译码显示Abstract:The curriculum design is based on electronic technology digital tube digital display,also designed to realize the circulation display 0 ~ 9. Mainly four digital integrated circuit and a seven segment digital tube, a total of Yin. Composition multivibrator as 555 timer circuit of the pulse generator, a nand gate in 74LS00 and 74LS161 counter that implementation of pulse count and cycle, the last is made up of 74HC4511 seven digital display decoder consisting of seven segment digital tube, a total of Yin decoding display section, to display circuit operation result.Keywords:SCAN,555 timer,multivibrator, counter, coding display目录1前言 (1)1.1设计背景 (1)1.2设计目标 (1)1.3实施计划 (1)1.4必备条件 (2)2总体设计方案 (3)2.1方案比较 (3)2.2 方案选择 (4)3单元模块设计 (5)3.1各单元模块介绍及电路设计 (5)3.2特殊器件的介绍 (9)4系统调试 (15)4.1调试环境 (15)4.2硬件调试 (16)5结论 (18)6致谢 (19)7参考文献 (20)附录 (21)1 前言当代电子技术的迅速发展,为人们的文化物质生活提供了优越的条件,数码摄像机,家庭影院,空调,电子计算机等,都是典型的电子技术应用实例,可谓琳琅满目,异彩纷呈。
电子技术在科技领域的应用,更是起了龙头作用,例如通信工程,测控技术,空间科学等比比皆是。
各种电子设备的应用使得人们生活在了信息的海洋,人们每天通过各种方式获取大量信息。
而现代信息的储存,处理和传输越来越趋于数字化。
在人们的日常生活中,常用的计算机,电视机,音响系统,视频记录设备,长途电信等电子设备或电子系统,无一不采用数字电路或数字系统。
因此,数字电子技术的应用越来越广泛。
本设计数码管循环数字显示器是采用数字电路对0~9进行循环计数,这只是一个简单的数字电路,但其思想应用于数字电路或数字系统的各个方面,如时钟,计数器,倒计时器等等。
1.1 设计背景随着科学技术的发展,电子产品的普及,电子技术在日常生活,科学研究等各个方面的应用越来越广泛。
电子技术在国民经济中占据着越来越重要的作用,作为电气工程及其自动化的学生应该熟练掌握电子技术的各方面知识。
在学习过数字电子技术,模拟电子技术和完成相关实验的的基础之上,应该对电子技术进行系统的整理。
所以我选择了数码管循环数字显示器这个题目作为课程设计的题目。
数码管循环数字显示器采用了555定时器,74LS161,74HC4511,共阴数码管等电子元件。
若要完成设计需要熟练掌握模拟电子技术,数字电子技术,系统的运用相关知识,通过完成设计培养我们对电子电路的综合分析设计能力。
1.2 设计目标数码管循环数字显示器主要是以四个数字集成电路和一个七段共阴数码管构成以及相关器件构成,实现0~9十个数字的循环输出。
(1)用555定时器构成一个多谐振荡器作为脉冲发生器模块。
(2)用74LS161和74LS00中的一个与非门构成计数模块,同时实现循环功能。
(3)用74HC4511和七段共阴数码管构成译码显示模块。
1.3 实施计划(1)根据所选课题,收集相关方面的知识,分析题目要求和设计目标,设计出合理的电路图。
(2)将设计出的电路图分成几个小的模块,并对每个模块进行深入分析,了解各个元器件的功能结构。
(3)用proteus软件画出电路图进行仿真调试,对不合理的地方进行修正。
(4)用Altium Designer软件画出原理图,并正确画出完整的PCB图;(5)写出完整、详细的课程设计说明书。
1.4 必备条件(1)所需器件:555定时器1片74LS161 1片74LS00 1片七段共阴数码管1个 74HC4511 1片电阻若干电容若干排针(2)软件:proteus7.8 Altium Designer142 总体设计方案首先通过对设计题目和设计要求的分析,把总体设计分解为数个小部分。
通过查询相关技术资料和结合自己所掌握的知识,对每一部分进行设计,使其实现部分要求,最后将各个部分有机的结合在一起,实现最终的设计目标。
符合要求的设计方案有两种,通过对两种方案的分析,选出最合适的设计方案。
2.1 方案比较通过分析,我们构思出了两种方案均可实现设计目的。
两种方案各有优劣,再通过下面的介绍完成方案的选择。
2.1.1 设计方案一设计方案一框图图2-1 方案一框图方案一:由555定时器构成的多谐振荡器作为电路的脉冲发生器,脉冲发生器所产生的脉冲作为计数器的CP 脉冲。
计数部分主要由74LS161和74LS00中的一个与非门构成,计数部分对脉冲发生器产生的脉冲进行计数,并且采用同步置数的方式来实现循环。
计数部分产生的结果进入有74HC4511和数码管构成的译码显示部分,最后电路的运行结果显示在数码管上。
2.1.2设计方案二多谐振荡器 译码器 计数器 反馈 显示器方案二框图图2-2 方案二框图方案二:由555定时器构成的多谐振荡器作为电路的脉冲发生器,脉冲发生器所产生的脉冲作为计数器的CP 脉冲。
然后脉冲进入由四个JK 触发器构成的计数器,计数器输出结果进入74HC4511译码,最后译码结果进入共阴七段数码管显示出来。
用JK 触发器构成十进制计数器,计数器的计数周期为0~9,通过异步清零完成循环。
2.2 方案选择方案选择:方案一和方案二最主要的区别在于计数部分的不同,方案一是直接用74LS161来实现对脉冲的计数,同是直接用75LS161上面的反馈置数功能实现循环;方案二是用四个JK 触发器充当电路的计数部分,通过相关反馈手法实现循环功能。
两种方案均能实现设计目标,但方案一与方案二相比较,方案一采用的方法更简洁,使用的器件更少。
因此,通过方案一完成本设计。
3 单元模块设计多谐振荡器 译码器 Jk 触发器 反馈 显示器在本节主要对各个单元模块进行分析,包括各个单元模块的具体功能,电路结构,工作原理,以及各个单元模块之间的相互联系。
再设计各个单元模块的计算时会对其中的计算进行说明,之后再对本设计所采用的核心器件进行简要说明。
3.1 各单元模块功能介绍及电路设计本设计主要由三个单元模块组成:时钟脉冲模块、计数模块、译码显示模块。
下面对各个单元模块的具体功能,组成,工作原理进行说明。
3.1.1 时钟脉冲模块设计1、模块的具体功能时钟脉冲模块是由555定时器构成的多谐振荡器充当的,多谐振荡器能够产生符合要求的矩形脉冲波。
通过计算我们可以确定多谐振荡器输出矩形波的周期,这样也就能够确定显示器的显示时间间隔。
2、模块的组成和工作原理图3-1(a)为由555多谐振荡器图。
555多谐振荡器主要由ne555和电阻、电容构成。
多谐振荡器是一种能产生矩形波的自激振荡器,也称矩形波发生器。
由于矩形波中除基波外还含有丰富的高次谐波,故称为多谐振荡器。
在接通电源后,不需要外加脉冲就能自动产生矩形脉冲。
多谐振荡器没有稳态,只有两个暂稳态。
在工作时,电路的状态在这两个暂稳态之间自动地交替变换,由此产生矩形波脉冲信号,常用作脉冲信号源及时序电路中的时钟信号。
555定时器构成的多谐振荡器如图3-1(a)所示,R1,R2和C是外接定时元件,电路中将高电平触发端(6脚)和低电平触发端(2脚)并接后接到R2和C的连接处,将放电端(7脚)接到R1,R2的连接处。
由于接通电源瞬间,电容C来不及充电,电容器两端电压uc为低电平,小于(1/3)Vcc,故高电平触发端与低电平触发端均为低电平,输出uo为高电平,放电管VT截止。
这时,电源经R1,R2对电容C充电,使电压uc按指数规律上升,当uc上升到(2/3)Vcc时,输出uo为低电平,放电管VT导通,把uc从(1/3)Vcc 上升到(2/3)Vcc这段时间内电路的状态称为第一暂稳态,其维持时间TPH的长短与电容的充电时间有关。
充电时间常数T充=(R1+R2)C。
由于放电管VT导通,电容C通过电阻R2和放电管放电,电路进人第二暂稳态.其维持时间TPL的长短与电容的放电时间有关,放电时间常数T放=R2C0随着C的放电,uc下降,当uc下降到(1/3)Vcc时,输出uo。
为高电平,放电管VT截止,Vcc再次对电容c充电,电路又翻转到第一暂稳态。
不难理解,接通电源后,电路就在两个暂稳态之间来回翻转,则输出可得矩形波。
电路一旦起振后,uc电压总是在(1/3~2/3)Vcc 之间变化。
图3-1(b)所示为工作波形。
图3-1(a)555多谐振荡器图图 3-1(b)工作波形图3、模块的结构框图图3-2 555内部结构图及引脚图4、模块的具体电路图3-3 555多谐振荡器图5、相关参数计算高电平时间,即充电时间,满足如下公式: T1=0.693*(R1+R2)*C低电平时间,即放电时间,满足如下公式: T2=0.693*R2*C振荡周期满足如下公式: T=T1+T2=0.693*(R1+2*R2)*C 振荡频率: f=1/T因为R1=100Ω,R2=72KΩ,C=10uF 所以:T=1s,f=1HZ3.1.2 计数模块设计1、模块的具体功能计数模块的功能是对脉冲发生器所产生的脉冲进行计数,并实现循环。