六位贴片数字电子时钟-kc-8023

上传人:F****n 文档编号:88029607 上传时间:2019-04-17 格式:PPT 页数:25 大小:869KB
返回 下载 相关 举报
六位贴片数字电子时钟-kc-8023_第1页
第1页 / 共25页
六位贴片数字电子时钟-kc-8023_第2页
第2页 / 共25页
六位贴片数字电子时钟-kc-8023_第3页
第3页 / 共25页
六位贴片数字电子时钟-kc-8023_第4页
第4页 / 共25页
六位贴片数字电子时钟-kc-8023_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《六位贴片数字电子时钟-kc-8023》由会员分享,可在线阅读,更多相关《六位贴片数字电子时钟-kc-8023(25页珍藏版)》请在金锄头文库上搜索。

1、数字时钟套件,湖南科瑞特智能科技有限公司 ,LED数码管的显示,本套件中采用的是7个led组成的7段数码管,共阳极接法。共个6个数码管, 分别用来显示时钟,分钟,秒钟。,时 分 秒,a,b,c,d,e,f,g,数码管的7个LED的阳极都通过三极管连接VCC,当连接三极管基极 的I/O口输出高电平,三极管导通。LED的阴极ag分别接P00P07, 此时如果给LED的阴极低电平该LED可被点亮。如上图,我们要显示 数字1,只需要点亮b,c两段数码管,即P0=1111 1001;如果要显示 数字2,点亮a,b,d,e,g,即P0=1010 0100。,数码管的显示原理,LED数码管要正常显示,就要用

2、驱动电路来驱动数码管的各个段码,从而显示出我们要的数位,因此根据LED数码管的驱动方式的不同,可以分为静态式和动态式两类。 A、静态显示驱动: 静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O埠进行驱动,或者使用如BCD码二-十进位*器*进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O埠多,如驱动5个数码管静态显示则需要58=40根I/O埠来驱动,要知道一个89S51单片机可用的I/O埠才32个呢。故实际应用时必须增加*驱动器进行驱动,增加了硬体电路的复杂性。 B、动态显示驱动: 数码管动态显示介面是单片机中应用最为广泛的一种显示方式之一,动态驱动

3、是将所有数码管的8个显示笔划“a,b,c,d,e,f,g“的同名端连在一起,另外为每个数码管的公共极COM增加位元选通控制电路,位元选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位元选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位元就显示出字形,没有选通的数码管就不会亮。,数码管的显示方式,透过分时轮流控制各个LED数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位元数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极体的余辉效应,尽管实际上各位

4、数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示资料,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O埠,而且功耗更低。 7段LED数码管是利用7个LED(发光二极管)外加一个小数点的LED组合而成的显示设备,可以显示09等10个数字,使用非常广泛。,数码管显示程序,我们要显示数字09,可以在程序中定义一个数组存放数字对应的 代码,程序如下:,unsigned char code SEG711=0xC0,/*0*/ 0xF9,/*1*/ 0xA4,/*2*/ 0xB0,/*3*/ 0x99,/*4*/ 0x92,/*5*/ 0x82,/*6*/ 0x

5、F8,/*7*/ 0x80,/*8*/ 0x90,/*9*/ 0xbf,/*-*/ ;,显示方式我们选择动态显示,程序如下:,Void display(DisSecondH,DisSecondL,DisMinutH,DisMinutL,DisHourH,DisHourL) unsigned char DisSecondH,DisSecondL,DisMinutH,DisMinutL,DisHourH,DisHourL; /显示子程序 LedDB=0xff; /消隐不能少 LedSel=(0x1Sel5); LedDB=SEG7DisSecondL; /显示秒钟的个位 delay(1); Led

6、DB=0xff; LedSel=(0x1Sel4); LedDB=SEG7DisSecondH; /显示秒钟的十位 delay(1);,LedDB=0xff; LedSel=(0x1Sel3); LedDB=SEG7DisMinutL; /显示分钟的个位 delay(1); LedDB=0xff; LedSel=(0x1Sel2); LedDB=SEG7DisMinutH; /显示分钟的十位 delay(1); LedDB=0xff; LedSel=(0x1Sel1); LedDB=SEG7DisHourL; /显示小时的个位 delay(1); LedDB=0xff; LedSel=(0x1

7、Sel0); if(DisHourH=0) LedDB=0xff; else LedDB=SEG7DisHourH; /显示小时的十位 delay(1); ,单片机定时器,电子时钟要实现精确走时,可以使用单片机内部的定时器,下面将介绍 定时器的原理和使用方法,定时器/计数器的结构,从上面定时器/计数器的结构图中我们可以看出,16 位的定时/计数器分别由两个 8 位专用寄存器组成,即:T0 由 TH0 和 TL0 构成;T1 由 TH1 和 TL1 构成。其访问地址依次为 8AH-8DH。每个寄存器均可单独访问。这些寄存器是用于存放定时或计数初值的。此外,其内部还有一个 8 位的定时器方式寄存器

8、 TMOD 和一个 8 位的定时控制寄存器 TCON。这些寄存器之间是通过内部总线和控制逻辑电路连接起来的。 TMOD 主要是用于选定定时器的工作方式; TCON 主要是用于控制定时器的启动停止,此外 TCON 还可以保存 T0、T1 的溢出和中断标志。当定时器工作 在计数方式时,外部事件通过引脚 T0(P3.4)和 T1(P3.5)输入。,定时器/计数器原理,16位的定时器/计数器实质上就是一个加1计数器,其控制电路受软件控制、切换。 当定时器/计数器为定时工作方式时,计数器的加1信号由振荡器的12分频信号产生,即每过一个机器周期,计数器加1,直至计满溢出为止。显然,定时器的定时时间与系统的

9、振荡频率有关。因一个机器周期等于12个振荡周期,所以计数频率fcount=1/12osc。如果晶振为12MHz,则计数周期为: T=1/(12106)Hz1/12=1s 这是最短的定时周期。若要延长定时时间,则需要改变定时器的初值,并要适当选择定时器的长度(如8位、13位、16位等)。 当定时器/计数器为计数工作方式时,通过引脚T0和T1对外部信号计数,外部脉冲的下降沿将触发计数。 计数器在每个机器周期的S5P2期间采样引脚输入电平。若一个机器周期采样值为1,下一个机器周期采样值为 0,则计数器加1。此后的机器周期S3P1期间,新的计数值装入计数器。所以检测一个由1至0的跳变需要两个机器周期,

10、故外部事年的最高计数频率为振荡频率的1/24。,例如,如果选用12MHz晶振,则最高计数频率为0.5MHz。虽然对外部输入信号的占空比无特殊要求,但为了确保某给定电平在变化前至少被采样一次,外部计数脉冲的高电平与低电平保持时间均需在一个机器周期以上。 当CPU用软件给定时器设置了某种工作方式之后,定时器就会按设定的工作方式独立运行,不再占用CPU的操作时间,除非定时器计满溢出,才可能中断CPU当前操作。CPU也可以重新设置定时器工作方式,以改变 定时器的操作。由此可见,定时器是单片机中效率高而且工作灵活的部件。 综上所述,我们已知定时器/计数器是一种可编程部件,所以在定时器/计数器开始工作之前

11、,CPU必须将一些命令(称为控制字)写入定时/计数器。将控制字写入定时/计数器的过程叫定时器/计数器初始化。在初始化过 程中,要将工作方式控制字写入方式寄存器,工作状态字(或相关位)写入控制寄存器,赋定时/计数初值。 控制寄存器 定时器计数器T0和T1有2个控制寄存器-TMOD和TCON,它们分别用来设置各个定时器计数器的工作方式,选择定时或计数功能,控制启动运行,以及作为运行状态的标志等。其中,TCON寄存器中 另有4位用于中断系统。,定时器/计数器的方式寄存器TMOD,定时器方式控制寄存器 TMOD 在特殊功能寄存器中,字节地址为 89H,无位地址。TMOD 的格式如下图所示。,由图可见,

12、TMOD 的高 4 位用于 T1,低 4 使用于 T0,4 种符号的含义如下: GATE:门控制位。GATE 和软件控制位 TR、外部引脚信号 INT 的状态,共同控制定时器计数器的打开或关闭。 GATE1时,T0、T1是否计数要受到外部引脚输入电平的控制,INT0引脚控制T0,INT1引脚控制T1。可用于测量在INT0和INT1引脚出现的正脉冲的宽度。若GATE0,即不使能门控功能,定时计数器的运行不受外部输入引脚INT0、INT1的控制。,CT:定时器计数器选择位。C/T1,为计数器方式;CT0,为定时器方式。 C/T0,为定时器模式,内部计数器对晶振脉冲12分频后的脉冲计数,该脉冲周期等

13、于机器周期,所以 可以理解为对机器周期进行计数。从计数值可以求得计数的时间,所以称为定时器模式。 C/T1,为计数器模式,计数器对外部输入引脚T0(P3.4)或T1(P3.5)的外部脉冲(负跳变)计数, 允许的最高计数频率为晶振频率的1/24。 M1M0:工作方式选择位,定时器计数器的 4 种工作方式由 M1M0 设定。,定时器/计数器的控制寄存器TCON,TCON 在特殊功能寄存器中,字节地址为 88H,位地址(由低位到高位)为 88H 一 8FH,由于有位地址,十分便于进行位操作。 TCON的作用是控制定时器的启、停,标志定时器溢出和中断情况。 TCON 的格式如下图所示。其中,TFl,T

14、Rl,TF0 和TR0 位用于定时器计数器;IEl,ITl,IE0 和 IT0 位用于中断系统。,各位定义如下: TF1:定时器 1 溢出标志位。当字时器 1 计满溢出时,由硬件使 TF1 置“1”,并且申请中断。进入中断服务程序后,由硬件自动清“0”,在查询方式下用软件清“0”。 TR1:定时器 1 运行控制位。由软件清“0”关闭定时器 1。当 GATE=1,且 INT1 为高电平时,TR1 置“1”启动定时器 1;当 GATE=0,TR1 置“1”启动定时器 1。,TF0:定时器 0 溢出标志。其功能及操作情况同 TF1。 TR0:定时器 0 运行控制位。其功能及操作情况同 TR1。 IE

15、1:外部中断 1 请求标志。 IT1:外部中断 1 触发方式选择位。 IE0:外部中断 0 请求标志。 IT0:外部中断 0 触发方式选择位。 TCON 中低 4 位与中断有关,我们将在下节课讲中断时再给予讲解。由于 TCON 是可以位寻址的,因而如果只清溢出或启动定时器工作,可以用位操作命令。例如:执行“CLR TF0”后则清定时器 0 的溢出;执行“SETB TR1”后可启动定时器 1 开始工作(当然前面还要设置方式定)。,定时器/计数器的初始化,由于定时器/计数器的功能是由软件编程确定的,所以一般在使用定时/计数器前都要对其进行初始化,使其按设定的功能工作。初始化的步骤一般如下: 1、确

16、定工作方式(即对TMOD 赋值); 2、预置定时或计数的初值(可直接将初值写入TH0、TL0 或 TH1、TL1); 3、根据需要开放定时器/计数器的中断(直接对 IE 位赋值); 4、启动定时器/计数器(若已规定用软件启动,则可把 TR0 或 TR1 置“1”;若已规定由外中断引脚电平启动,则需给外引脚步加启动电平。当实现了启动要求后,定时器即按规定的工作方式和初值开始计数或定时)。 下面介绍一下确定时时/计数器初值的具体方法。 因为在不同工作方式下计数器位数不同,因而最大计数值也不同。 现假设最大计数值为 M,那么各方式下的最大值 M 值如下: 方式 0:M=213=8 192 方式 1:M=216=65 536 方式 2:M=28=256 方式 3:定时器 0 分成两个 8 位计数器,所以两个 M 均为256。 因为定时器/计数器是作“加 1”计数,并在计数满溢出时产

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

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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