首页 第6章 定时器及应用

第6章 定时器及应用

举报
开通vip

第6章 定时器及应用单片机原理及接口技术**§6.1定时器概述§6.2定时器的控制§6.3定时器的四种模式及应用§6.4思考题与习题第六章定时器及应用§6.1定时器概述§6.1.189C51定时器结构§6.1.289C51定时器功能单片机原理及接口技术**§6.1.189C51定时器结构89C51定时器的结构如图6-1所示。有两个16位的定时器/计数器,即定时器0(T0)和定时器1(T1)。都是16位加1计数器。T0由两个8位特殊功能寄存器TH0和TL0构成;T1由TH1和TL1构成。单片机原理及接口技术**§6.1.289C51定时...

第6章  定时器及应用
单片机原理及接口技术**§6.1定时器概述§6.2定时器的控制§6.3定时器的四种模式及应用§6.4思考 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 与习题第六章定时器及应用§6.1定时器概述§6.1.189C51定时器结构§6.1.289C51定时器功能单片机原理及接口技术**§6.1.189C51定时器结构89C51定时器的结构如图6-1所示。有两个16位的定时器/计数器,即定时器0(T0)和定时器1(T1)。都是16位加1计数器。T0由两个8位特殊功能寄存器TH0和TL0构成;T1由TH1和TL1构成。单片机原理及接口技术**§6.1.289C51定时器功能每个定时器都可由软件设置为定时工作方式或计数工作方式。由特殊功能寄存器TMOD和TCON所控制。定时器工作不占用CPU时间,除非定时器/计数器溢出,才能中断CPU的当前操作。定时器/计数器有四种工作模式。其中模式0-2对T0和T1是一样的,模式3对两者不同。单片机原理及接口技术**定时工作方式定时器计数89C51片内振荡器输出经12分频后的脉冲,即每个机器周期使定时器(T0或T1)的数值加1直至计满溢出。当89C51采用12MHz晶振时,一个机器周期为1μs,计数频率为1MHz。单片机原理及接口技术**计数工作方式通过引脚T0(P3.4)和T1(P3.5)对外部脉冲信号计数。当输入脉冲信号产生由1至0的下降沿时计数器的值加1。CPU 检测 工程第三方检测合同工程防雷检测合同植筋拉拔检测方案传感器技术课后答案检测机构通用要求培训 一个1至0的跳变需要两个机器周期,故最高计数频率为振荡频率的1/24。为了确保某个电平在变化之前被采样一次, 要求 对教师党员的评价套管和固井爆破片与爆破装置仓库管理基本要求三甲医院都需要复审吗 电平保持时间至少是一个完整的机器周期。对输入脉冲信号的基本要求如图6-2所示。单片机原理及接口技术**§6.2定时器的控制§6.2.1工作模式寄存器TMOD§6.2.2控制器寄存器TCON单片机原理及接口技术**§6.2.1工作模式寄存器TMODTMOD用于控制T0和T1的工作模式。TMOD不能位寻址,只能用字节设置定时器的工作模式,低半字节设置T0,高半字节设置T1。89C51系统复位时,TMOD的所有位被清0。TMOD各位的定义格式如图6-3所示。TMOD各位定义及具体的意义归纳如图6-4所示。单片机原理及接口技术**图6-3工作模式寄存器TMOD的位定义定时器T1定时器T0TMOD(89H)D7D6D5D4D3D2D1D0GATEC/TM1M0单片机原理及接口技术**GATEC/TM1M0①M1和M0—操作模式控制位。两位可形成四种编码,对应于四种模式。 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 6-1M1,M0控制的四种工作模式单片机原理及接口技术*②C/T—计数器/定时器方式选择位。C/T=0,设置为定时方式。定时器计数89C51片内脉冲,即对机器周期计数。C/T=1,设置为计数方式。计数器的输入来自引脚T0(P3.4)或T1(P3.5)端的外部脉冲。单片机原理及接口技术*③GATE—门控位。GATE=0,只要用软件使TR0(或TR1)置1就可以启动定时器,而不管INT0(或INT1)的电平是高还是低。GATE=1,只有INT0(或INT1)引脚为高电平且由软件使TR0(或TR1)置1时,才能启动定时器工作。单片机原理及接口技术*单片机原理及接口技术*§6.2.2控制器寄存器TCONTCON除可字节寻址外,各位还可位寻址。89C51系统复位时,TCON的所有位被清0。TCON各位的定义格式如图6-5所示。TCON各位定义及具体的意义归纳如图6-6所示。TF1TR1TF0TR0IE1IT1IE0IT0TCON(88H)8FH8EH8DH8CH8BH8AH89H88H图6-5控制寄存器TCON的位定义单片机原理及接口技术*①TF1(TCON.7)—T1溢出标志位。当T1溢出时,由硬件自动使中断触发器TF1置1,并向CPU申请中断。当CPU响应中断进入中断服务程序后,TF1被硬件自动清0。TF1也可以用软件清0。单片机原理及接口技术*②TF0(TCON.5)—T0溢出标志位。其功能和操作情况同TF1。当T0溢出时,由硬件自动使中断触发器TF0置1,并向CPU申请中断。当CPU响应中断进入中断服务程序后,TF1被硬件自动清0。TF1也可以用软件清0。单片机原理及接口技术*③TR1(TCON.6)—T1运行控制位。可通过软件置1(TR1=1)或清0(TR1=0)来启动或关闭T1工作。在程序中用指令“SETBTR1”使TR1位置1,定时器T1便开始计数。用“CLRTR1”使TR1清0,定时器停止工作。单片机原理及接口技术*④TR0(TCON.4)—T0运行控制位。其功能和操作情况同TR1。可通过软件置1(TR0=1)或清0(TR0=0)来启动或关闭T0。在程序中用指令“SETBTR0”使TR0位置1,定时器T0便开始计数。用“CLRTR0”使TR0清0,定时器停止工作。单片机原理及接口技术*⑤IE1,IT1,IE0,IT0(TCON.3~TCON.0)——外部中断INT1,INT0请求及请求方式控制位。前一章已经讲过。单片机原理及接口技术*单片机原理及接口技术*§6.3定时器的四种模式及应用§6.3.1模式0及其应用§6.3.2模式1及其应用§6.3.3模式2及其应用§6.3.4模式3及其应用§6.3.5综合应用举例§6.3.1模式0及其应用一、模式0的逻辑电路结构T0在模式0的逻辑电路结构如图6-7所示。(T1相同)二、模式0工作特点三、模式0的应用举例单片机原理及接口技术*二、模式0工作特点在这种模式下,16位寄存器(TH0和TL0)只用了13位。其中TL0的高3位未用,其余5位为整个13位的低5为,TH0占高8位。当TL0的低5位溢出时,向TH0进位;TH0溢出时,向中断标志TF0进位(硬件置位TF0),并申请中断。定时时间为:t=(213-T0初值)×振荡周期×12用于计数工作方式时,计数长度为:L=(213-T0初值)(个外部脉冲)×××TH0TL08位5位单片机原理及接口技术*三、模式0的应用举例例6-1:设晶振为12MHz,试计算定时器T0工作于模式0时的最大定时时间T。解:当T0处于工作模式0时,加1计数器为13位。因为:定时时间为:t=(213-T0初值)×振荡周期×12最大定时时间为“T0初值=0”时。所以:单片机原理及接口技术*例6-2:设定时器T0用于定时10ms,晶振为6MHz。试确定T0初值。并编写定时器T0初始化程序段。解:1)确定T0初值当T0处于工作模式0时,加1计数器为13位。定时时间:所以:∴T0初值=3192=C78H=0110001111000B即:(TH0)=01100011B=63H(高8位)(TL0)=11000B=18H(低5位)单片机原理及接口技术*TMOD的低四位为T0的控制位模式0:M1M0=00,定时器方式:C/T=0,门控位不受INT0的影响:GATE=0,其余位:为0。∴模式字为TMOD=00000000B=00H定时器T1定时器T0GATEC/TM1M0GATEM1C/TM0TMOD(89H)D7D6D5D4D3D2D1D0解:2)确定TMOD的初值单片机原理及接口技术*解:3)编写定时器T0的初始化程序段主程序:ORG0100HMAIN:MOVSP,#60H;设堆栈指针MOVTMOD,#00H;选择工作模式MOVTH0,#63H;送初值MOVTL0,#18HSETBTR0;启动定时…单片机原理及接口技术*例6-3:设定时器T1工作于模式0,晶振为6MHz。编程实现:每10ms时间P1.0取反的程序。解:1)确定T1初值T1处于工作模式0时,定时时间位10ms(同例2)。(TH1)=01100011B=63H(高8位)(TL1)=11000B=18H(低5位)2)确定TMOD的初值TMOD的高四位为T1的控制位模式0:M1M0=00,定时器方式:C/T=0,门控位不受INT0的影响:GATE=0,其余位:为0。∴模式字为TMOD=00000000B=00H单片机原理及接口技术*解:3)编写程序初始化引导程序:ORG0000HRESET:AJMPMAIN;跳过中断服务程序区ORG001BH;中断服务程序入口AJMPITOP主程序:ORG0100HMAIN:MOVSP,#60H;设堆栈指针MOVTMOD,#00H;选择工作模式MOVTH1,#63H;送初值MOVTL1,#18HSETBP1.0;P1.0置1SETBTR1;启动定时SETBET1;T1开中断SETBEA;CPU开中断HERE:AJMPHERE;等待时间到,转入中断服务程序单片机原理及接口技术*中断服务程序ORG0150HITOP:MOVTL1,#18H;重新装入初值MOVTH1,#63HCPLP1.0;P1.0取反RETI;中断返回例6-4:利用T0的工作模式0产生定时,在P1.0引脚输出周期为10ms的方波。设晶振频率fosc=12MHz。编程实现其功能(分别采用查询方式和中断方式)。解:要在P1.0引脚输出周期为10ms的方波,只要使P1.0每隔5ms取反一次即可。(1)选择工作模式T0的模式字为TMOD=00H,即:M1M0=00,C/T=0,GATE=0,其余位为0。(2)计算5ms定时T0的初值T=(213-T0初值)×(1/12)×10-6×12=5×10-3sT0初值=3192D=C78H=0110001111000BT0的低5位:11000B=18H即(TL0)=18HT0的高8位:01100011B=63H即(TH0)=63H单片机原理及接口技术*(3)采用查询方式的程序程序清单:ORG0000HLJMPMAIN;初始化引导程序ORG0080HMAIN:MOVTMOD,#00H;设置T0为模式0MOVTL0,#18H;送初值MOVTH0,#63HSETBP1.0SETBTR0;启动定时LP:JBCTF0,NEXT;查询定时时间到否SJMPLPNEXT:MOVTL0,#18H;重装计数初值MOVTH0,#63HCPLP1.0;取反SJMPLP;重复循环单片机原理及接口技术*(4)采用定时器溢出中断方式的程序ORG0000H;主程序RESET:AJMPMAIN;跳过中断服务程序区ORG000BH;定时器T0中断矢量AJMPCTC0;转入中断服务程序ORG0030HMAIN:MOVTMOD,#00H;设置T0为模式0MOVTL0,#18H;送初值MOVTH0,#63HSETBEA;CPU开中断SETBET0;T0中断允许SETBTR0;启动定时HERE:SJMPHERE;等待中断ORG0120H;中断服务程序CTC0:MOVTL0,#18H;重新装入初值MOVTH0,#63HCPLP1.0;P1.0取反RETI;中断返回单片机原理及接口技术*模式0的应用举例完§6.3.2模式1及其应用一、模式1的逻辑电路结构:T0在模式1的逻辑电路结构如图6-8所示。(T1相同)二、模式1工作特点三、模式1的应用举例单片机原理及接口技术*二、模式1工作特点该模式对应的是一个16位的定时器/计数器。用于定时工作方式时,定时时间为:t=(216-T0初值)×振荡周期×12用于计数工作方式时,计数长度为:(216-T0初值)(个外部脉冲)TH0TL08位8位单片机原理及接口技术*三、模式1的应用举例例6-5:设定时器T0选择工作模式1的计数器工作方式,其计数器初值为FFFFH,问此时定时器T0的实际用途是什么?解:因其初值为FFFFH,只要随机外来一脉冲即可溢出,向CPU申请中断,故这一内部中断源实质上已作为外部中断源使用。因此此定时器T0并不用于定时或计数。单片机原理及接口技术*例6-6:设晶振为12MHz,试计算定时器T0工作于模式1时的最大定时时间T。解:当T0处于工作模式1时,加1计数器为16位。定时时间为:t=(216-T0初值)×振荡周期×12最大定时时间为“T0初值=0”时。所以:单片机原理及接口技术*例6-7:用定时器T1产生一个50Hz的方波,由P1.1输出。使用程序查询方式,fosc=6MHz。解:1)确定定时器T1初值∵方波周期T=1/50=0.02s=20ms∴用T1定时10ms,时间到P1.1引脚电平取反。∴(TH1)=ECH,(TL1)=78H20ms10ms10ms单片机原理及接口技术*解:2)确定工作模式寄存器TMOD的值∵定时器T1工作于模式1的定时器工作方式,∴高四位:GATE=0,C/T=0,M1M0=01,低四位:取0。∴(TMOD)=00010000B=10H3)编程ORG0000HLJMPSTARTORG0080HSTART:MOVTMOD,#10H;T1为模式1MOVTL1,#78H;送初值MOVTH1,#0ECHSETBP1.1;P1.1置1SETBTR1;启动定时LOOP:JNBTF1,LOOP;查询定时时间到否CLRTF1;产生溢出,清标志位MOVTL1,#78H;重新置初值MOVTH1,#0ECHCPLP1.1;取反SJMPLOOP;重复循环单片机原理及接口技术*《模式1的应用举例完》§6.3.3模式2及其应用一、模式2的逻辑电路结构二、模式2工作特点三、模式2的应用举例单片机原理及接口技术*一、模式2的逻辑电路结构T0在模式2的逻辑电路结构如图6-9所示。(T1相同)TL0计数溢出时,不仅使溢出中断标志位TF0置1,而且还自动把TH0中的内容重新装载到TL0中。TL0用作8位计数器,TH0用以保存初值。单片机原理及接口技术*二、模式2工作特点该模式把TL0(TL1)配置成一个可以自动重装载的8位定时器/计数器。在程序初始化时,TL0和TH0由软件赋予相同的初值。用于定时工作方式时,定时时间为:t=(28-TL0初值)×振荡周期×12用于计数工作方式时,计数长度为:(28-TL0初值)(个外部脉冲)该模式可省去软件中重装常数的语句,并可产生相当精确的定时时间,适合于作串行口波特率发生器。单片机原理及接口技术*三、模式2的应用举例例6-8:当P3.4引脚(定时器T0的外部计数输入端)上的电平发生负跳变时,从P1.0输出一个500μs的同步脉冲。用查询方式编程实现该功能,fosc=6MHz。单片机原理及接口技术*解:题目要实现的功能如图6-10所示。(1)确定TMOD值门控位GATE=0,高四位取0,选T0为模式2(M1M0=10),首先为计数器工作方式(C/T=1):(TMOD)=00000110B=06H当P3.4引脚上的电平发生负跳变时,T0计数器加1,溢出标志TF0置1;然后改变T0为500μs定时工作方式(C/T=0):(TMOD)=02H当上面TF0=1时使P1.0输出由1变为0。开始T0定时,到500μs产生溢出,使P1.0输出恢复高电平,T0又恢复外部事件计数方式。定时器T1定时器T0GATEC/TM1M0GATEM1C/TM0TMOD(89H)D7D6D5D4D3D2D1D0(2)计算T0初值T0工作在外部事件计数方式:题目要求T0引脚出现一次外部事件时,引起T0中断。所以:设计计数器初值为FFH,当计数器再加1就溢出了。即:T0初值+1=28T0初值=28-1=11111111B=0FFH即:(TH0)=(TL0)=0FFHT0工作在定时工作方式:因为晶振频率为6MHz,定时500μs。所以:(28-T0初值)×2μs=500μs得出:T0初值=6=06H,即:(TH0)=(TL0)=06H单片机原理及接口技术*(3)程序清单:ORG0000HLJMPSTARTORG0080HSTART:MOVTMOD,#06H;设置T0为模式2,外部计数方式MOVTL0,#0FFH;T0计数器初值MOVTH0,#0FFHSETBTR0;启动T0计数LOOP1:JBCTF0,PTFO1;查询T0溢出标志,TF0=1时转,且清TF0=0SJMPLOOP1;等待T0溢出PTFO1:CLRTR0;停止计数MOVTMOD,#02H;设置T0为模式2,定时方式MOVTL0,#06H;送初值,定时500μsMOVTH0,#06HCLRP1.0;P1.0清0SETBTR0;启动定时500μsLOOP2:JBCTF0,PTFO2;查询T0溢出标志,TF0=1时转并清TF0=0SJMPLOOP2;等待T0溢出中断(定时时间到)PTFO2:SETBP1.0;P1.0置1CLRTR0;停止定时SJMPSTART;转向开始,重新等待T0引脚的脉冲单片机原理及接口技术*《例6-8完》例6-9:利用定时器T1的模式2对外部信号计数。要求每计满100次,将P1.0端取反。解:(1)选择模式外部信号由T1(P3.5)引脚输入,每发生一次负跳变计数器加1,每输入100个脉冲,计数器发生溢出中断,中断服务程序将P1.0取反一次。T1计数工作方式模式2的模式字为(TMOD)=60H。T0不用时,TMOD的低4位可任取,但不能进入模式3,一般取0。单片机原理及接口技术*(2)计算T1的计数初值X=28-100=156=9CH因此:TL1的初值为9CH,重装初值寄存器TH1=9CH。(3)程序清单ORG0000HLJMPMAINORG001BH;中断服务程序入口CPLP1.0RETIMAIN:MOVTMOD,#60H;设置T1为模式2,外部计数方式MOVTL1,#9CH;T1计数器初值MOVTH1,#9CHMOVIE,#88H;定时器开中断SETBTR1;启动T1计数HERE:SJMPHERE;等待中断单片机原理及接口技术*《模式2的应用举例完》§6.3.4模式3及其应用一、模式3的逻辑电路结构工作模式3对T0和T1大不相同。1、T0模式3的逻辑电路结构2、T0模式3下T1的逻辑电路结构二、模式3的应用举例单片机原理及接口技术*1、T0模式3的逻辑电路结构T0模式3的逻辑电路结构如图6-11所示。T0设置为模式3,TL0和TH0被分成两个相互独立的8位计数器。TL0:用原T0的各控制位、引脚和中断源,即C/T,GATE,TR0,TF0,T0(P3.4)引脚,INT0(P3.2)引脚。TL0可工作在定时器方式和计数器方式。其功能和操作与模式0、模式1相同(只是8位)。TH0:只可用作简单的内部定时功能。TH0占用了定时器T1的控制位TR1和T1的中断标志TF1,其启动和关闭仅受TR1的控制。单片机原理及接口技术*2、T0模式3下T1的逻辑电路结构定时器T1无工作模式3状态。在T0用作模式3时,T1仍可设置为模式0~2。T0模式3下T1的逻辑电路结构如图6-12所示。由于TR1和TF1被定时器T0占用,计数器开关K已被接通,此时,仅用T1控制位,C/T切换其定时或计数器工作方式就可使T1运行。当计数器溢出时,只能将输出送入串行口或用于不需要中断的场合。一般作波特率发生器单片机原理及接口技术*二、模式3的应用举例例6-10:设某用户系统已使用了两个外部中断源,并置定时器T1工作在模式2,作串行口波特率发生器用。现要求再增加一个外部中断源,并由P1.0引脚输出一个5kHz的方波。Fosc=12MHz.解:(1)工作模式可设置T0工作在模式3计数器方式,把T0的引脚作附加的外部中断输入端,TL0的计数初值为FFH,当检测到T0引脚电平出现由1至0的负跳变时,TL0产生溢出,申请中断。T0模式3下,TL0作计数用,而TH0用作8位的定时器,定时控制P1.0引脚输出5kHz的方波信号。单片机原理及接口技术*(2)计算初值TL0的计数初值为FFH。TH0的计数初值X为:P1.0方波周期T=1/(5kHz)=0.2ms=200μs用TH0作定时100μs时,X=256-100×12/12=156(3)程序清单MOVTMOD,#27H;T0为模式3,计数方式,T1为模式2,定时方式MOVTL0,#0FFH;TL0计数初值MOVTH0,#156;TH0计数初值MOVTL1,#data;data是根据波特率,要求设置的常数(初值)MOVTH1,#dataMOVTCON,#55H;外中断0,外中断1边沿触发,启动T0,T1MOVIE,#9FH;开放全部中断TL0溢出中断服务程序(由000BH转来)TL0INT:MOVTL0,#0FFH;TL0重赋初值(中断处理)RETITH0溢出中断服务程序(由001BH转来)TH0INT:MOVTH0,#156;TH0重赋初值CPLP1.0;P1.0取反输出RETI串行口及外部中断0,外部中断1的服务程序略单片机原理及接口技术*《模式3的应用举例完》§6.3.5综合应用举例例6-11:设时钟频率为6MHz。编写利用T0产生1s定时的程序。解:(1)定时器T0工作模式的确定∵模式0最长可定时16.384ms;模式1最长可定时131.072ms;模式2最长可定时512μs;∴定时1s,可选用模式1,每隔100ms中断一次,中断10次从而达到1s的定时。(2)求计数器初值X∵(216-X)×12/(6×106)=100×10-3s∴X=15536=3CB0H因此:(TL0)=0B0H(TH0)=3CH(3)实现方法:对于中断10次计数,可使T0工作在计数方式,也可用循环程序的方法实现。本例采用循环程序法。单片机原理及接口技术*(4)源程序清单ORG0000HAJMPMAIN;上电,转向主程序ORG000BH;T0的中断服务程序入口地址AJMPSERVE;转向中断服务程序ORG0080H;主程序MAIN:MOVSP,#60H;设堆栈指针MOVB,#0AH;设循环次数MOVTMOD,#01H;设置T0工作于模式1MOVTL0,#0B0H;装计数值低8位MOVTH0,#3CH;装计数值高8位SETBTR0;启动定时SETBET0;T0开中断SETBEA;CPU开中断SJMP$;等待中断SERVE:MOVTL0,#0B0H;重新赋初值MOVTH0,#3CHDJNZB,LOOP;B-1不为0,继续定时CLRTR0;1s定时到,停止T0工作LOOP:RETI;中断返回END单片机原理及接口技术*《例6-11完》例6-12:设计实时时钟程序。时钟就是以秒、分、时为单位进行计时。用定时器与中断的联合应用。解:(1)实现时钟计时的基本方法①计算计数初值。时钟计时的最小单位是秒,可把定时器的定时时间定为100ms,计数溢出10次即得到1秒;10次计数可用软件方法实现。假定使用定时器T0,以工作模式1进行100ms的定时。如fosc=6MHz,则计数初值X为:∴X=15536=3CB0H因此:(TL0)=0B0H(TH0)=3CH②采用定时方式进行溢出次数的累计,计满10次即得到秒计时。设置软件计数器初值为10,每100ms定时时间到溢出中断,使软件计数器减1,直到减到0,则1s到。单片机原理及接口技术*③从秒到分和从分到时的计时是通过累计和数值比较实现的。设置几个累加单元分别进行对1s,1min,1h进行计数。满1s,秒位累加;满60s,分位累加;满60min,时位累加;满24h全部累加单元清0单片机原理及接口技术*(2)程序流程及程序清单①主程序流程如图所示。设T1为模式1设中断次数清计时单元开中断启动T1调用显示子程序图6-13时钟主程序流程保护现场赋计数初值到1s?(32H)加1(32H)=60?(32H)清0(31H)加1(31H)=60?(31H)清0(30H)加1(30H)=24?(30H)清0恢复现场返回入口aaNNNNYYYY图6-14中断服务程序流程图②中断服务流程如图6-14所示。③源程序如下:ORG0000HAJMPMAIN;上电,转向主程序ORG001BH;T1的中断服务程序入口地址AJMPSERVE;转向中断服务程序ORG2000H;主程序MAIN:MOVSP,#60H;设堆栈指针MOVTMOD,#10H;设置T1工作于模式1MOV20H,#0AH;设循环次数CLRAMOV30H,A;时单元清0MOV31H,A;分单元清0MOV32H,A;秒单元清0SETBET1;T1开中断SETBEA;CPU开中断MOVTL1,#0B0H;装计数值低8位MOVTH1,#3CH;装计数值高8位SETBTR1;启动定时SJMP$;等待中断(可反复调用显示子程序)单片机原理及接口技术*中断服务程序:SERVE:PUSHPSW;保护现场PUSHACCMOVTL1,#0B0H;重新赋初值MOVTH1,#3CHDJNZ20H,RETUNT;1s未到,返回MOV20H,#0AH;重置中断次数MOVA,#01HADDA,32H;“秒位”加1DAA;转换为BCD码MOV32H,ACJNEA,#60H,RETUNT;未满60s,返回MOV32H,#00H;计满60s,“秒位”清0MOVA,#01HADDA,31H;“分位”加1DAA;转换为BCD码MOV31H,ACJNEA,#60H,RETUNT;未满60min,返回MOV31H,#00H;计满60min,“分位”清0单片机原理及接口技术*MOVA,#01HADDA,30H;“时位”加1DAA;转换为BCD码MOV30H,ACJNEA,#24H,RETUNT;未满24h,返回MOV30H,#00H;计满24h,“时位”清0RETUNT:POPACC;恢复现场POPPSWRETI;中断返回END单片机原理及接口技术*《综合应用举例完》单片机原理及接口技术§6.4思考题与习题1、定时器模式2有什么特点?适用于什么应用场合?2、单片机用内部定时方法产生频率为100KHz等宽距形波,假定单片机的晶振频率为12MHz。请编程实现。3、89C51定时器有哪几种工作模式?有何区别?4、89C51单片机内部设有几个定时器/计数器?它们是由哪些特殊功能寄存器组成?5、定时器用作定时器时,其定时时间与哪些因素有关?作计数器时,对外界计数频率有何限制?*6、简述定时器四种工作模式的特点,如何选择和设定?7、当定时器T0用作模式3时,由于TR1位已被T0占用,如何控制定时器T1的开启和关闭?8、以定时器/计数器1进行外部事件计数。每计数1000个脉冲后,定时器T1转为定时工作方式。定时10ms后,又转为计数方式,如此循环不止。假定单片机晶振频率为6MHz,请使用模式1编程实现。9、一个定时器的定时时间有限,如何实现两个定时器的串行定时,以满足较长定时时间的要求?10、使用一个定时器,如何通过软、硬件结合的方法,实现较长时间的定时?单片机原理及接口技术*§6.4思考题与习题11、89C51定时器作定时和计数时,其计数脉冲分别由谁提供?12、89C51定时器的门控制信号GATE设置为1时,定时器如何启动?13、已知89C51单片机的fosc=6MHz,请利用T0和P1.0输出矩形波。矩形波高电平宽50μs,低电平宽300μs.14、已知89C51单片机的fosc=12MHz,用T1定时。试编程由P1.0和P1.1引脚分别输出周期为2ms和500μs的方波。15、单片机8031的时钟频率为6MHz,若要求定时值分别为0.1ms,1ms,10ms,定时器0工作在模式0、模式1和模式2时,其定时器初值各应是多少?单片机原理及接口技术*§6.4思考题与习题16、89C51单片机的定时器在何种设置下可提供三个8位计数器定时器?这时,定时器1可作为串行口波特率发生器。若波特率按9600b/s,4800b/s,2400b/s,1200b/s,600b/s,100b/s来考虑,则此时可选用的波特率是多少(允许存在一定误差)?设fosc=12MHz。17、试编制一段程序,功能为:当P1.2引脚的电平上跳时,对P1.1的输入脉冲进行计数;当P1.2引脚的电平下跳时,停止计数,并将计数值写入R6,R7。18、设fosc=6MHz。试编制一段程序,功能为:对定时器T0初始化,使之工作在模式2,产生200μs定时,并用查询T0溢出标志的方法,控制P1.0输出周期为2ms的方波。《完》单片机原理及接口技术*§6.4思考题与习题
本文档为【第6章 定时器及应用】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
hw93705
暂无简介~
格式:ppt
大小:1MB
软件:PowerPoint
页数:63
分类:
上传时间:2023-02-24
浏览量:2