单片机 定时计数器PPT讲稿.ppt
单片机 定时计数器第1页,共35页,编辑于2022年,星期五时间选择按钮时间选择按钮电视机睡眠电视机睡眠时间设定时间设定第2页,共35页,编辑于2022年,星期五秒表计时秒表计时3当计时启动后,1/100秒位的两位数字在1秒内飞快的由00增加到99。秒表内部的电路需要有较高的精度才能准确地以1/100秒为间隔更新显示数字。第3页,共35页,编辑于2022年,星期五定时与计数定时与计数什么是定时?什么是定时?4定时过程可视为单片机计算单位时间(可以是定时过程可视为单片机计算单位时间(可以是1s、1ms、1s)的个数,当计时完成后,把)的个数,当计时完成后,把单位时间乘以个数就得到了定时的时间长度。单位时间乘以个数就得到了定时的时间长度。第4页,共35页,编辑于2022年,星期五什么是计数?什么是计数?5计数就是计算事件的发生次数。霍尔开关每当车轮转过一圈时磁铁接近一次霍尔开关,于是就会输出一个脉冲。如果把这个脉冲输入单片机,单片机可以在每次脉冲到来时计一个数,假设60秒内单片机的计数值为n,于是车轮每转过一圈的时间,即脉冲的周期为:如果车轮的半径为r,于是车轮的周长为C=2r,得自行车的行驶速度为:第5页,共35页,编辑于2022年,星期五定时定时/计数器的模式控制寄存器计数器的模式控制寄存器TMOD6用来设置定时/计数器的工作模式。TMOD的长度为1个字节(8位),高4位和低4位分别控制T1和T0。其中由M11、M01控制T1的工作模式,M10、M00控制T0的工作模式。如想令T0工作在定时器的模式0下(软件启动),而T1工作在计数器的模式1下(软件启动),则设置Timer的指令为“MOV TMOD,#01010000B”。第6页,共35页,编辑于2022年,星期五定时定时/计数器的控制寄存器计数器的控制寄存器TCON7TCON是“timer control”的缩写,用于控制定时/计数器的启动或停止,并指示其是否溢出。TCON在特殊功能寄存器的地址88H上。TCON的高4位的名称及功能描述:第7页,共35页,编辑于2022年,星期五方式方式方式方式1 1方式方式2方式方式0方式方式方式方式3 3定时定时/计数器的计数器的4 4种工作方式种工作方式第8页,共35页,编辑于2022年,星期五1 1、定时、定时/计数器的工作方式计数器的工作方式0 0 定时定时/计数器工作在方式计数器工作在方式0 0时,时,为为1313位定时位定时/计数器,由计数器,由TL1TL1的低的低5 5位和位和TH1TH1的高的高8 8位所构成。位所构成。第9页,共35页,编辑于2022年,星期五T1T1工作于方式工作于方式0 0的等效框图的等效框图T1T2第10页,共35页,编辑于2022年,星期五n 计数计数/定时方式选择位定时方式选择位 ,计数工作方式,对外部引脚输入脉冲计数计数工作方式,对外部引脚输入脉冲计数,用作计用作计数器。数器。,定时工作方式,对片内机器周期脉冲计数,用作定定时工作方式,对片内机器周期脉冲计数,用作定时器。时器。nGATE GATE 门控位门控位 GATE=0GATE=0,运行只受启动控制位,运行只受启动控制位TR1TR1的控制。的控制。GATE=1GATE=1,运行同时受,运行同时受TR1TR1和和 的双重控制。的双重控制。只有当只有当 且且 ,定时计数器才能运行定时计数器才能运行第11页,共35页,编辑于2022年,星期五 GATEGATE位的状态决定定时位的状态决定定时/计数器的运行控制取决于计数器的运行控制取决于TR1TR1一个条件还是一个条件还是TR1TR1和和INT1INT1引脚两个条件。引脚两个条件。方式方式0 0说明说明计数控制计数控制由由TR1和和INT1两个条件控制两个条件控制计数控制仅由计数控制仅由TR1的状态确定:的状态确定:TR1=1,计数,计数,TR1=0停止计数停止计数当当GATE=0时时当当GATE=1时时第12页,共35页,编辑于2022年,星期五设计方式设计方式0的计数初始值的计数初始值13方式方式0下的设置过程与方式下的设置过程与方式1相同,只是相同,只是TMOD中的中的M1x和和M0 x位均为位均为0。计数初始值的设计:。计数初始值的设计:将定时时长将定时时长t(fc=12MHz)除以)除以1。用用8192减去步骤减去步骤得到的数。得到的数。用科学计算器把步骤用科学计算器把步骤的得数转换成的得数转换成13位二进制数位二进制数MN3N2N1N0P3P2P1P0Q3Q2Q1Q0,高位如果是空的用,高位如果是空的用0补上,依次补上,依次填入填入THx的的8位和位和TLx的低的低5位中,位中,TLx的高的高3位用位用0代替。代替。第13页,共35页,编辑于2022年,星期五设计模式设计模式0的计数初始值的计数初始值14最后得计数初始值:最后得计数初始值:THx=MN3N2N1N0P3P2P1(二进制),(二进制),TLx=000P0Q3Q2Q1Q0(二进制)。(二进制)。根据以上的步骤,晶振频率根据以上的步骤,晶振频率=12MHz,定时时长,定时时长500s,则有:,则有:500s/1s=5008192-500=76927692(十进制)=1111000001100(二进制)THx=11110000B=F0H,TLx=00001100B=0CH。第14页,共35页,编辑于2022年,星期五设计模式设计模式0的计数初始值的计数初始值15例例1:第15页,共35页,编辑于2022年,星期五定时定时/计数器的工作方式计数器的工作方式116模式模式1的特点的特点方式方式1 1的特点:的特点:是一个是一个1616位的定时器或计数器,寄存器位的定时器或计数器,寄存器TLxTLx和和THxTHx共共1616位全部用来装位全部用来装计数值;计数值;用指令用指令“SETB TRxSETB TRx”启动启动定时定时/计数器;计数器;溢出时,溢出标志溢出时,溢出标志TFxTFx被硬件置被硬件置1 1,可通过检测,可通过检测TFxTFx标志位来了解计数是标志位来了解计数是否完成。否完成。当计数完成后,使用指令当计数完成后,使用指令“CLR TRxCLR TRx”和和“CLR TFxCLR TFx”来关闭来关闭TimerTimer。如果需要循环。如果需要循环TimerTimer的定时或计数过程,的定时或计数过程,TimerTimer寄存器寄存器TLxTLx和和THxTHx中必须中必须再次装载再次装载原来的计数初始值。原来的计数初始值。第16页,共35页,编辑于2022年,星期五方式方式1的设置的设置17例例2:让:让P1.0口输出频率为口输出频率为100Hz方波信号(占空比为方波信号(占空比为50%的矩形波)。的矩形波)。第17页,共35页,编辑于2022年,星期五方式方式1的设置的设置18设置定时设置定时/计数器的工作方式。计数器的工作方式。往定时往定时/计数器的寄存器(计数器的寄存器(TL0和和TH0)载入计数初始值。)载入计数初始值。T0作定时器,工作在方式作定时器,工作在方式1下的设置下的设置第18页,共35页,编辑于2022年,星期五方式方式1的设置的设置19启动定时启动定时/计数器(计数器(Timer)。如图所示,定时)。如图所示,定时/计数器的寄存器从计数器的寄存器从计数初始值计数初始值EC78H计数到计数到FFFFH。检测定时检测定时/计数器溢出标志(计数器溢出标志(TF0)。)。关闭定时关闭定时/计数器。计数器。定时定时/计数器的计数过程计数器的计数过程第19页,共35页,编辑于2022年,星期五方式方式1的设置的设置20清清0溢出标志(溢出标志(TF0)。)。重新装载计数初始值。因为程序重新装载计数初始值。因为程序11-2在不断变换在不断变换P1.0口状态(指令口状态(指令“CPLP1.0”)并进行)并进行5000s的延时,于是就形成了频率的延时,于是就形成了频率100Hz的的方波信号。方波信号。第20页,共35页,编辑于2022年,星期五方式方式1的计数初始值的计数初始值21已知晶振频率已知晶振频率,可根据以下的公式计算出方式,可根据以下的公式计算出方式1下定时下定时/计数器计数器作定时器的定时时长:作定时器的定时时长:定时时长定时时长t的单位为的单位为s,为晶振频率,单位是为晶振频率,单位是MHz。FFFF是定时是定时/计数器的寄存器的最大计数值。计数器的寄存器的最大计数值。MMLL表示寄存器中装载的计数初始值。表示寄存器中装载的计数初始值。Val的意思是将(的意思是将(FFFF-MMLL+1)的计算结果转换成十进制。)的计算结果转换成十进制。第21页,共35页,编辑于2022年,星期五练习:设计模式练习:设计模式1的计数初始值的计数初始值22设计一个方波发生器,要求从设计一个方波发生器,要求从P1.0口输出频率口输出频率f=2kHz的方波,即的方波,即P1.0口输出高、低电平持续时间分别为口输出高、低电平持续时间分别为250s。如何确定计数初始。如何确定计数初始值?值?计数初始值为:计数初始值为:THx=FF,TLx=06第22页,共35页,编辑于2022年,星期五方式方式1的应用的应用23利用定时利用定时/计数器延时生成计数器延时生成2KHz方波的程序(方式方波的程序(方式1)第23页,共35页,编辑于2022年,星期五定时定时/计数器的工作方式计数器的工作方式224模式模式2的特点的特点是一个具有自动重新载入功能的是一个具有自动重新载入功能的8位定时器或计数器,定时位定时器或计数器,定时/计数器的寄存器只由计数器的寄存器只由TLx充当。充当。具有自动重新载入计数初始值的功能。具有自动重新载入计数初始值的功能。第24页,共35页,编辑于2022年,星期五方式方式2的特点的特点25如:如:TLx和和THx中都载入了计数初始值中都载入了计数初始值3FH,当,当Timer启动后,只有启动后,只有TLx中的计数值会随机器周期增加,直到中的计数值会随机器周期增加,直到Timer溢出后,标志位溢出后,标志位TFx=1,THx中的计数初始值被自动载入中的计数初始值被自动载入TLx中。这样在新一轮的计数中。这样在新一轮的计数一开始,一开始,TLx中已经有了初始值中已经有了初始值3FH。第25页,共35页,编辑于2022年,星期五方式方式2的设置的设置26例例3:利用定时:利用定时/计数器延时生成计数器延时生成T=500s方波的程序(方式方波的程序(方式2)第26页,共35页,编辑于2022年,星期五设计方式设计方式2的计数初始值的计数初始值27在方式在方式2下定时下定时/计数器作定时器的计数初始值只有计数器作定时器的计数初始值只有8位,同时载入位,同时载入TLx和和THx中。中。将定时时长将定时时长t除以除以。用用256减去步骤减去步骤得到的数。得到的数。用科学计算器把步骤用科学计算器把步骤中的得数转换成十六进制形式中的得数转换成十六进制形式TT。最后得计数初始值:最后得计数初始值:THx=TLx=TT。假设某单片机系统的晶振频率假设某单片机系统的晶振频率=12MHz,定时时长,定时时长t=50s,根据以上步骤可以设计计,根据以上步骤可以设计计数初始值:数初始值:50s/1s=5025650=206206(十进制)(十进制)=CEH(十六进制)(十六进制)THx=CE,TLx=CE第27页,共35页,编辑于2022年,星期五定时定时/计数器的工作方式计数器的工作方式328方式方式3的特点的特点只适用于只适用于T0,T1不具有方式不具有方式3.TL0和和TH0变成两个独立的变成两个独立的8位定时位定时/计数器的寄存器。计数器的寄存器。T0变成了两个独变成了两个独立的立的8位定时位定时/计数器,但不具备自动重新装载计数初始值的特性。计数器,但不具备自动重新装载计数初始值的特性。以以TL0为为Timer寄存器的寄存器的Timer使用使用TMOD寄存器和寄存器和TCON寄存器中原寄存器中原来与来与Timer0有关的控制位和标志位,设置的方法与前面相同。而以有关的控制位和标志位,设置的方法与前面相同。而以TH0为为Timer寄存器的寄存器的Timer使用原来使用原来Timer1的溢出标志位的溢出标志位TF1和启动和启动/关闭关闭控制位控制位TR1,但不能用作计数器使用。,但不能用作计数器使用。第28页,共35页,编辑于2022年,星期五11.6.2模式模式3的设置的设置29第29页,共35页,编辑于2022年,星期五方式方式3的设置的设置30利用定时利用定时/计数器延时生成计数器延时生成T=300s、占空比、占空比=1/3方波的程序(方式方波的程序(方式3)第30页,共35页,编辑于2022年,星期五设计方式设计方式3的计数初始值的计数初始值31在方式在方式3下两个独立的定时下两个独立的定时/计数器的寄存器只有计数器的寄存器只有8位,其计数初始值的计算方法相同。位,其计数初始值的计算方法相同。将定时时长将定时时长t除以除以。用用256减去步骤减去步骤得到的数。得到的数。用科学计算器把步骤用科学计算器把步骤中的得数转换成十六进制形式中的得数转换成十六进制形式TT。最后得计数初始值:最后得计数初始值:TH0或或TL0=TT。假设某单片机系统的晶振频率假设某单片机系统的晶振频率=12MHz,定时时长,定时时长t=150s,根据以上步骤可以设计计,根据以上步骤可以设计计数初始值:数初始值:150s/1s=150256150=106106(十进制)(十进制)=6AH(十六进制)(十六进制)TH0或或TL0=6AH第31页,共35页,编辑于2022年,星期五计数器的应用计数器的应用32第32页,共35页,编辑于2022年,星期五11.7.2计数器的设置计数器的设置33在Timer模式控制寄存器TMOD的C/Tx#位用于设置Timer用作定时器或计数器,当C/Tx#=1时,对应的Timer用作计数器。Timer 0和Timer 1可以被配置成两个独立的计数器,分别对输入单片机T0端(14管脚)和T1端(15管脚)的脉冲进行计数。Timer作计数器使用时,Timer寄存器THx和TLx的计数值记录的是输入单片机的脉冲的个数。第33页,共35页,编辑于2022年,星期五11.6.2模式模式3的设置的设置34第34页,共35页,编辑于2022年,星期五?1 1、如何延时生成、如何延时生成2KHz2KHz方波(方式方波(方式0 0)2 2、如何生成、如何生成T=500T=500m m、占空比为、占空比为1/31/3的方波(方式的方波(方式3 3)AddYourText?作业作业3、利用定时、利用定时/计数器进行计数器进行1s定时(定时(T1作定时器,工作在方式作定时器,工作在方式1下)下)?第35页,共35页,编辑于2022年,星期五