项目二数码管显示及定时器剖析

上传人:我** 文档编号:115348997 上传时间:2019-11-13 格式:PPT 页数:64 大小:9.18MB
返回 下载 相关 举报
项目二数码管显示及定时器剖析_第1页
第1页 / 共64页
项目二数码管显示及定时器剖析_第2页
第2页 / 共64页
项目二数码管显示及定时器剖析_第3页
第3页 / 共64页
项目二数码管显示及定时器剖析_第4页
第4页 / 共64页
项目二数码管显示及定时器剖析_第5页
第5页 / 共64页
点击查看更多>>
资源描述

《项目二数码管显示及定时器剖析》由会员分享,可在线阅读,更多相关《项目二数码管显示及定时器剖析(64页珍藏版)》请在金锄头文库上搜索。

1、张 祁,单片机及其应用,位选,段选,项目二,数码管是如何显示出字符的 数码管静态显示与动态显示原理 中断概念 单片机的定时器应用 外部中断应用,显示器及其接口,单片机系统中常用的显示器有: 发光二极管LED(Light Emitting Diode)显示器、液晶LCD(Liquid Crystal Display)显示器、CRT显示器等。LED、LCD显示器有两种显示结构:段显示(7段、米字型等)和点阵显示(58、88点阵等)。,使用LED显示器时,要注意区分这两种不同的接法。为了显示数字或字符,必须对数字或字符进行编码。七段数码管加上一个小数点,共计8段。因此为LED显示器提供的编码正好是一

2、个字节。TX实验板用共阴LED显示器,根据电路连接图显示16进制数的编码已列在下表。,共阴极,共阳极,共阴数码管码表,0x3f , 0x06 , 0x5b , 0x4f , 0x66 , 0x6d , 0 1 2 3 4 5 0x7d , 0x07 , 0x7f , 0x6f , 0x77 , 0x7c , 6 7 8 9 A B 0x39 , 0x5e , 0x79 , 0x71 , 0x00 C D E F 无显示,知识点:编码定义和数组,数组类型 数组名 长度 = 元素 ;,Code表示改数组存放在ROM中。 数组长度若空,编译时会自动计算。 数组各元素之间用逗号隔开。,LED数码显示方

3、式及电路,静态显示方式 LED显示器工作方式有两种:静态显示方式和动态显示方式。静态显示的特点是每个数码管的段选必须接一个8位数据线来保持显示的字形码。当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。这种方法的优点是占用CPU时间少,显示便于监测和控制。缺点是硬件电路比较复杂,成本较高。,静态显示方式,位码关键字: w0:0xfe w4:0xef w1:0xfd w5:0xdf w2:0xfb w6:0xbf w3:0xf7 w7:0x7f,例:后三位数码管动态显示321,例 利用定时/计数器T1的方式1,在数码管低两位上循环显示0-59,每1S数字加1。设系统时钟频率为12 M

4、Hz。,动态显示,动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。,动态显示 1,动态显示 2,在低三位数码管上动态显示321的程序(部分),在低三位数码管上动态显示321的效果,作业: 1.利用动态扫描方法在六位数码管上显示出稳定的123456 2.在仿真电路中的数码管上显示班级-学号(084E01.23) 3.在仿真电路中的数码管上显示年月日 (2

5、010.12.03),80C51的中断系统 定时器/计数器,中断的概念 CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生); CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务); 待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回),这一过程称为中断 。,MCS-51单片机的中断系统结构,执行主程序,主程序,继续执行主程序,断点,中断请求,中断响应,执行中断处理程序,中断返回,引起CPU中断的根源,称为中断源。中断源向CPU提出的中断请求。CPU暂时中断原来的事务A,转去处理事件B。对事件B处理完毕后,再回到原来被中断的地方(即

6、断点),称为中断返回。实现上述中断功能的部件称为中断系统(中断机构)。,80C51中断系统的结构 80C51的中断系统有5个中断源(8052有 6个) ,2个优先级,可实现二级中断嵌套 。,80C51的中断系统5个中断源,定时/计数器的结构和工作原理,定时/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。TMOD是定时/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。,定时的实质是对时钟脉冲进行计数。,计数的实质是对P3.4 (T0)、 P3.5 (T1)引脚输入的脉冲进行计数。,80C51单片机定时器/计数器应用

7、,总体来说,定时器/计数器就是在对脉冲进行计数的操作。,从一个生活中的例子看起:一个水盆在水龙头下,水龙没关紧,水一滴滴地滴入盆中。水滴不断落下,盆的容量是有限的,过一段时间之后,水就会逐渐变满。 那么单片机中的计数器有多大的容量呢?8051单片机中有两个计数器,分别称之为T0和T1,这两个计数器分别是由两个8位的RAM单元组成的,即每个计数器都是16位的计数器,最大的计数量是65536。,计数容量的概念,让我们再来看水滴的例子,当水不断落下,盆中的水不断变满,最终有一滴水使得盆中的水满了。这时如果再有一滴水落下,就会发生什么现象?水会漫出来,用个术语来讲就是“溢出”。,水溢出是流到地上,而计

8、数器溢出后将使得TF0变为“1”。一旦TF0由0变成1,就是产生了变化,产生了变化就会引发事件,就象闹钟定时的时间一到,闹钟就会响一样。此时就向CPU提出中断请求。,计数溢出的概念,任意定时及计数的方法,提示:如果是一个空的盆要10000滴水滴进去才会满,如果在开始滴水之前就先放入一勺水,还需要10000滴吗?,我们采用预置数的方法,要计数100次,那就先放进65436,再来100个脉冲,不就到了65536了吗。 定时也是如此,若每个脉冲是1微秒,则计满65536个脉冲需时65.536毫秒。如果现在只要10毫秒定时怎么办?,10个毫秒为10000个微秒,所以,只要在计数器里面放进65536-1

9、0000=55536就可以了。,一、中断允许控制寄存器IE,与80C51定时器/计数器中断有关的控制寄存器,EX0(IE.0),外部中断0允许位; ET0(IE.1),定时/计数器T0中断允许位; EX1(IE.2),外部中断0允许位; ET1(IE.3),定时/计数器T1中断允许位; ES(IE.4),串行口中断允许位; EA (IE.7), CPU中断允许(总允许)位。,二、工作方式寄存器TMOD 工作方式寄存器TMOD用于设置定时/计数器的工作方式,低四位用于T0,高四位用于T1。,80C51单片机定时/计数器的工作由两个特殊功能寄存器控制。TMOD用于设置其工作方式;TCON用于控制其

10、启动和中断申请。,与80C51定时器/计数器中断有关的控制寄存器,GATE:门控位。GATE0时,只要用软件使TCON中的TR0或TR1为1,就可以启动定时/计数器工作;GATA1时,要用软件使TR0或TR1为1,同时外部中断引脚INT0/1也为高电平时,才能启动定时/计数器工作。即此时定时器的启动条件,加上了INT0/1引脚为高电平这一条件。 :定时/计数模式选择位。 0为定时模式; =1为计数模式。 M1M0:工作方式设置位。定时/计数器有四种工作方式,由M1M0进行设置。,三、控制寄存器TCON TCON的低4位用于控制外部中断。TCON的高4位用于控制定时/计数器的启动和中断申请。,T

11、F1(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类同。,与80C51定时器/计数器中断有关的控制寄存

12、器,定时/计数器的工作方式 一、方式0 方式0为13位计数,由TL0的低5位(高3位未用)和TH0的8位组成。TL0的低5位溢出时向TH0进位,TH0溢出时,置位TCON中的TF0标志,向CPU发出中断请求。,二、方式1 方式1的计数位数是16位,由TL0作为低8位、TH0作为高8位,组成了16位加1计数器 。,计数个数与计数初值的关系为:,定时/计数器应用举例,初始化程序应完成如下工作: 1.对TMOD赋值,以确定T0和T1的工作方式。 2.计算初值,并将其写入TH0、TL0或TH1、TL1。 3.中断方式时,则对IE赋值,开放中断。 4.使TR0或TR1置位,启动定时/计数器定时或计数。,

13、void 函数名()interrupt n using m 函数体 . ,中断服务函数,n 中断号 m 工作寄存器组,例 利用定时/计数器T0的方式1,产生10ms的定时,并使P1.0引脚上输出周期为20ms的方波,采用中断方式,设系统时钟频率为12 MHz。,例 利用定时/计数器T1的方式1,在数码管低两位上循环显示0-59,每1S数字加1。设系统时钟频率为12 MHz。,知识点1:基本if选择语句,if (表达式) 语句组; ,当表达式的结果为“真”时执行其后的语句组,否则跳过该语句,继续执行下面的语句。,在if语句中,花括号 里面的语句组如果只有一条语句,可以省略花括号。,知识点2:if

14、-else选择语句,if (表达式) 语句组1; else 语句组2; ,当表达式的结果为“真”时执行其后的语句组1,否则执行语句组2。,知识点3:if-else-if选择语句,if (表达式1) 语句组1; else if (表达式2) 语句组2; else if (表达式n) 语句组n; else 语句组n+1; ,例 利用定时/计数器T0的方式1,使发光二极管每1S闪烁1次。设系统时钟频率为12 MHz。,例 利用定时/计数器T1的方式1,在数码管上显示一个简易时钟。设系统时钟频率为12 MHz。,使用T0定时1S(25ms*40次),实现流水灯自上而下 使用T1定时2S(40ms*50

15、次),实现流水灯自下而上 使用T1定时1S(20ms*50次),实现流水灯自上而下 使用T0定时2S(25ms*80次),实现流水灯自下而上,使用T1定时使继电器以1S(20ms*50次)速率切换 使用T0定时使继电器以2S(50ms*40次)速率切换,继电器 继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。在大多数的情况下,继电器就是一个电磁铁,这个电磁铁(又称为线圈)的衔铁可以闭合或断开一个或数个触点。继电器的触点有常开型

16、和常闭型两种。当继电器线圈未通电时,断开的触点称为常开触点(NO),而闭合的触点称为常闭触点(NC)。当电磁铁的绕组中有电流通过时,衔铁被电磁铁吸引,因而就改变了触点的状态,即原来断开的触点会闭合,而原来闭合着的触点将会断开。,计数器使用举例:当f100Hz时D1亮;f100Hz时D4亮。D2和D3每秒闪烁一次。,T=5.2div*2ms/div=10.4ms f=1/T=96.15Hz,T=5div*2ms/div=10ms f=1/T=100Hz,T=3div*2ms/div=6ms f=1/T=167Hz,计数器使用举例:当f100Hz时D1亮;f100Hz时D4亮。D2和D3每秒闪烁一次。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号