数码管的静态显示_第1页
数码管的静态显示_第2页
数码管的静态显示_第3页
数码管的静态显示_第4页
数码管的静态显示_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机应用技术任务五数码管显示任务导入

很多以单片机为核心构成的系统都含有显示部分,它是人机交流的重要组成部分,与键盘一样有着重要的地位。单片机的运行结果和运行状态可以通过显示部分直观地呈现出来。单片机应用系统中常用的显示部件有LED(lightemittingdiode)和LCD(liquidcrystaldisplay)两种,LED数码管显示的应用最为普遍。那么数码管的原理是什么样的?具体又如何来使用数码管呢?这些问题将通过本任务的实现来得以回答。任务五数码管显示一什么是数码管二数码管的静态显示知识学习一、什么是数码管任务五数码管显示1.数码管的结构

单片机应用系统中最常用的LED数码管显示是七段LED数码管,通常的七段LED数码管中有八个发光二极管,所以也有人叫做八段显示器。若干个发光二极管构成了LED数码显示器的主要部分,当在发光二极管的两端加相应的电压使其导通时,与发光二极管对应的点或线发光,用这样的发光二极管来组成一定的图形,相应控制不同的发光二极管导通,就可以显示出不同的图形。其中七段LED数码管有七个发光二极管组成一个数字“8”,一个发光二极管组成小数点。任务五数码管显示共阳极数码管LED数码管从结构形式上分共阴极数码管任务五数码管显示LED数码管结构图共阴数码管码表

0x3f,0x06,0x5b,0x4f,0x66,0x6d,

0 12 345

0x7d,0x07,0x7f,0x6f,0x77,0x7c,

6 78 9AB

0x39,0x5e,0x79,0x71,0x00

CDEF 无显示任务五数码管显示2.数码管的测量

使用数码管时,首先要识别其是共阴极型的还是共阳极型,这可以通过测量它的管脚来确定。还可以直接用数字万用表测试,方法同测试普通半导体二极管一样。红表笔接数码管的公共端,黑表笔分别接其他各脚,如果数码管相应的段发光,则说明此数码管为共阳极。黑表笔接数码管的公共端,红表笔接其他各脚,如果数码管相应的段发光,则说明此数码管为共阴极。红表笔是电源的正极,黑表笔是电源的负极。任务五数码管显示3.数码管的字型编码

要使数码管显示出相应的数字或字符必须使段数据口输出相应的字型编码。数据线D0与a字段对应,数据线D1与b字段对应,以此类推。如使用共阳极数码管,数据为0表示对应字段亮,数据为1表示对应字段暗;如使用共阴极数码管,数据为0表示对应字段暗,数据为1表示对应字段亮。如要显示“0”,共阳极数码管的字型编码应为11000000B(即C0H),共阴极数码管的字型编码应为00111111B(即3FH)。LED数码显示方式及电路

静态显示方式LED显示器工作方式有两种:静态显示方式和动态显示方式。静态显示的特点是每个数码管的段选必须接一个8位数据线来保持显示的字形码。当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。这种方法的优点是占用CPU时间少,显示便于监测和控制。缺点是硬件电路比较复杂,成本较高。

动态显示动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。动态显示0-99s(T0方式1)

二、数码管的静态显示任务五数码管显示N位LED数码管组成的显示单元任务五数码管显示四位静态LED显示器电路任务五数码管显示4个LED组成的静态显示硬件译码接口电路任务五任务实施数码管显示一元器件的准备二硬件电路三程序设计一、元器件的准备

准备好之前章节所做的最小系统,除此之外再准备8个阻值为510Ω额定功率为1/4W的电阻、一个0.5寸共阳极数码管、一个按键和一个阻值为4.7kΩ的上拉电阻。任务五数码管显示三、程序设计5

43

2

1显示对应键值指示逻辑电平模拟流水显示变化的数字显示特定的数字或字符任务五数码管显示1、(奇数学号)1)让数码管1、3、5显示数字9;

2)数码管1、2、3轮流显示0-9,并依次循环,间隔时间0.2S左右。3)利用数码管模拟流水灯,并用外部中断0产生中断程序:奇数led点亮(低电平触发)2、(偶数学号)

1)让数码管2、4、6显示数字F2)数码管4、5、6轮流显示A-F,并依次循环,间隔时间0.2S左右。3)利用数码管模拟流水灯,并用外部中断1产生中断程序:偶数led点亮(下降沿触发)实验时序(1)时钟周期

时钟周期也称为振荡周期,定义为时钟脉冲频率的倒数(时钟周期就是单片机外接晶振频率的倒数,如外接12MHz的晶振,那么时钟周期就是1/12μs),是计算机中最基本的、最小的时间单位。(2)机器周期

完成一个基本操作所需要的时间称为机器周期。一般情况下,一个机器周期由若干个状态周期组成。

指令周期是执行一条指令所需要的时间,一般由若干个机器周期组成。指令不同,所需的机器周期数也不同。对于一些简单的单字节指令,在取指令周期中,指令取出到指令寄存器后,立即译码执行,不再需要其他的机器周期。(3)指令周期时钟周期、机器周期和指令周期之间的关系80C51的定时/计数器

实现定时功能,比较方便的办法是利用单片机内部的定时/计数器。也可以采用下面三种方法:软件定时:软件定时不占用硬件资源,但占用了CPU时间,降低了CPU的利用率。采用时基电路定时:例如采用555电路,外接必要的元器件(电阻和电容),即可构成硬件定时电路。但在硬件连接好以后,定时值与定时范围不能由软件进行控制和修改,即不可编程。采用可编程芯片定时:这种定时芯片的定时值及定时范围很容易用软件来确定和修改,此种芯片定时功能强,使用灵活。在单片机的定时/计数器不够用时,可以考虑进行扩展。二、单片机的定时/计数器MCS-51系列单片机定时/计数器逻辑结构图一、定时/计数器的结构定时/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。

加1计数器输入的计数脉冲有两个来源,一个是由系统的时钟振荡器输出脉冲经12分频后送来(12个振荡周期计数器加1);一个是T0或T1引脚输入的外部脉冲源。每来一个脉冲计数器加1,当加到计数器为全1时,再输入一个脉冲就使计数器回零,且计数器的溢出使TCON中TF0或TF1置1,向CPU发出中断请求(定时/计数器中断允许时)。如果定时/计数器工作于定时模式,则表示定时时间已到;如果工作于计数模式,则表示计数值已满。

可见,由溢出时计数器的值减去计数初值才是加1计数器的计数值。

设置为定时器模式时,加1计数器是对内部机器周期计数(1个机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)。计数值N乘以机器周期Tcy就是定时时间t

。设置为计数器模式时,外部事件计数脉冲由T0或T1引脚输入到计数器。在每个机器周期的S5P2期间采样T0、T1引脚电平。当某周期采样到一高电平输入,而下一周期又采样到一低电平时,则计数器加1,更新的计数值在下一个机器周期的S3P1期间装入计数器。由于检测一个从1到0的下降沿需要2个机器周期,因此要求被采样的电平至少要维持一个机器周期。当晶振频率为12MHz时,最高计数频率不超过1/2MHz,即计数脉冲的周期要大于2s。

TMOD是定时/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。

定时/计数器的控制80C51单片机定时/计数器的工作由两个特殊功能寄存器控制。TMOD用于设置其工作方式;TCON用于控制其启动和中断申请。一、工作方式寄存器TMOD

工作方式寄存器TMOD用于设置定时/计数器的工作方式,低四位用于T0,高四位用于T1。其格式如下:GATE:门控位。GATE=0时,只要用软件使TCON中的TR0或TR1为1,就可以启动定时/计数器工作;GATA=1时,要用软件使TR0或TR1为1,同时外部中断引脚或也为高电平时,才能启动定时/计数器工作。即此时定时器的启动多了一条件。

:定时/计数模式选择位。=0为定时模式;为计数模式。M1M0:工作方式设置位。定时/计数器有四种工作方式,由M1M0进行设置。

TCON的低4位用于控制外部中断,已在前面介绍。TCON的高4位用于控制定时/计数器的启动和中断申请。其格式如下:TF1(TCON.7):T1溢出中断请求标志位。T1计数溢出时由硬件自动置TF1为1。CPU响应中断后TF1由硬件自动清0。T1工作时,CPU可随时查询TF1的状态。所以,TF1可用作查询测试的标志。TF1也可以用软件置1或清0,同硬件置1或清0的效果一样。TR1(TCON.6):T1运行控制位。TR1置1时,T1开始工作;TR1置0时,T1停止工作。TR1由软件置1或清0。所以,用软件可控制定时/计数器的启动与停止。TF0(TCON.5):T0溢出中断请求标志位,其功能与TF1类同。TR0(TCON.4):T0运行控制位,其功能与TR1类同。控制寄存器TCONCPU对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器IE控制的。EX0(IE.0),外部中断0允许位;ET0(IE.1),定时/计数器T0中断允许位;EX1(IE.2),外部中断0允许位;ET1(IE.3),定时/计数器T1中断允许位;ES(IE.4),串行口中断允许位;EA(IE.7),CPU中断允许(总允许)位。

一、方式0

方式0为13位计数,由TL0的低5位(高3位未用)和TH0的8位组成。TL0的低5位溢出时向TH0进位,TH0溢出时,置位TCON中的TF0标志,向CPU发出中断请求。定时/计数器的工作方式

定时器模式时有:N=t/Tcy计数初值计算的公式为:定时器的初值还可以采用计数个数直接取补法获得。计数模式时,计数脉冲是T0引脚上的外部脉冲。门控位GATE具有特殊的作用。当GATE=0时,经反相后使或门输出为1,此时仅由TR0控制与门的开启,与门输出1时,控制开关接通,计数开始;当GATE=1时,由外中断引脚信号控制或门的输出,此时控制与门的开启由外中断引脚信号和TR0共同控制。当TR0=1时,外中断引脚信号引脚的高电平启动计数,外中断引脚信号引脚的低电平停止计数。这种方式常用来测量外中断引脚上正脉冲的宽度。

用定时器1方式0实现1s的延时,试计算计数初值。假设系统采用频率为12MHz的晶振。

因方式0采用13位计数器,其最大定时时间为8192×1μs=8.192ms,因此,定时时间不可能为50ms,可选择定时时间为5ms,再循环执行200次即可。定时时间选定后,再确定计数值为5000,则定时器1的初值为X=M-计数值=8192-5000=3192=C78H=0110001111000B因13位计数器中TL1的高3位未用,应填写0,TH1占高8位,所以X的实际填写值应为X=0110001100011000B=6318H即TH1=63H,TL1=18H,又因采用方式0定时,故TMOD=00H。解:

方式1的计数位数是16位,由TL0作为低8位、TH0作为高8位,组成了16位加1计数器。计数个数与计数初值的关系为:

二、方式1

例利用定时/计数器T1的方式1,产生10ms的定时,设系统时钟频率为12MHz。解:1、计算计数初值X:由于晶振为12MHz,所以机器周期Tcy为1s。所以:N=t/Tcy=10000/1=10000X=65536-10000=55536=D8F0H即应将D8H送入TH0中,F0H送入TL0中

2、求T1的方式控制字TMOD

M1M0=01,GATE=0,C/T=0,可取方式控制字为01H;

方式2为自动重装初值的8位计数方式。工作方式2特别适合于用作较精确的脉冲信号发生器。

计数个数与计数初值的关系为:

三、方式2

试用定时器1方式2实现1s的延时,试计算计数初值。假设系统采用频率为12MHz的晶振。

因方式2是8位计数器,其最大定时时间为256×1μs=256μs,为实现1s延时,可选择定时时间为250μs,再循环执行4000次。定时时间选定后,可确定计数值为250,则定时器1的初值为:X=M-计数值=256-250=6=6H。采用定时器1方式2工作,因此,TMOD=20H。解:

方式3只适用于定时/计数器T0,定时器T1处于方式3时相当于TR1=0,停止计数。

工作方式3将T0分成为两个独立的8位计数器TL0和TH0

四、方式3

用T0方式3实现1s的延时,试计算计数初值,设系统采用频率为12MHz的晶振。

根据题意,定时器0中的TH0只能为定时器,定时时间可设为250μs;TL0设置为计数器,计数值可设为200。TH0计满溢出后,用软件复位的方法使T0(P3.4)引脚产生负跳变,TH0每溢出一次,T0引脚便产生一个负跳变,TL0便计数一次。TL0计满溢出时,延时时间应为50ms,循环20次便可得到1s的延时。由上述分析可知,TH0计数初值为:X=(256-250)=6=06HTL0计数初值为:X=(256-200)=56=38HTMOD=0000

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论