版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
会计学1第MCS单片机的定时器计数器25.1
定时/计数器概述5.2
定时/计数器工作方式与原理5.3
定时/计数器的四种工作模式5.4
定时/计数器的控制和状态寄存器5.5
定时/计数器的初值计算5.6
定时/计数器的应用本章目录第1页/共43页35.1定时/计数器概述定时、计数是计算机经常要处理的操作。如:利用单片机产生某一频率的方波(定时);利用单片机作工业生产线上的产品数量统计、电机转速的测量(计数)等。第2页/共43页4以定时为例:通常有两种方法实现。软件延时法:利用指令(延时子程序)运行所消耗的时间实现所需的定时时间。特点:由CPU控制,占用CPU的资源;硬件法:利用一个硬件电路实现所需的时间定时,一旦时间到便产生一个标志信号通知CPU。特点:由CPU控制定时的启动,但定时过程由专用模块实现,CPU不参与其过程。所以提高了CPU的工作效率。第3页/共43页5定时/计数器就是专用于产生延时和计数的外围模块,是单片机内部重要的组成部分。作为一个嵌入式控制器,其内部所包含的定时/计数器的数量已经成为衡量其功能的重要指标。第4页/共43页65.2定时/计数器工作方式与原理单片机的定时/计数器是硬件逻辑电路,它可以完成两种不同的工作方式----“定时”、“计数”;使用硬件电路,可以提高CPU的工作效率。第5页/共43页7
定时:产生一个标准的时间间隔;如20mS,100mS或1000mS等.单片机使用这种方式可以产生一个符合某一要求的脉冲方波(如下图)。20mS40mSMCS-51Px.y输出波形第6页/共43页8
计数:对外部的事件(脉冲)进行统计。 外部事件的发生是随机的,单片机不可能预知外部事件何时发生,但可以进行统计(计数)。当达到所要求的计数值时,单片机进行相应的操作。MCS-51T0(T1)
端口外部脉冲外部设备第7页/共43页9单片机检测产品数量示意图P0口
MCS-51T0红外线扫描发射器红外线接收电路产品包装控制器产品生产线产品传送带第8页/共43页10定时/计数器的基本模型D7D6D5D4D3D2D1D0CY计数脉冲CP溢出标志8位的加一计数器定时、计数器的核心部件是一个计数器。两种工作方式的区别在于计数脉冲来源;第9页/共43页11MCS-51单片机定时/计数器的工作原理
N位增量计数器TFN位初值寄存器系统内部时钟fosc启动控制TR外部脉冲T0或T1引脚定时/计数控制C/*T计数器溢出中断信号计数脉冲CPC/*T=0C/*T=1定时、计数时间到标志
(1):何时控制启动计数器?问题: (2):如何控制是定时还是计数? (3):如何控制定时/计数的长短?第10页/共43页12TR. 定时计数器的启动控制开关。
TR=1:计数器开始计数; TR=0:计数器停止计数。C/T.计数器输入脉冲选择开关,决定着计数器的“定时” 或“计数”的两种工作方式。
C/T=0:计数器接收内部时钟信号fosc---定时方式; C/T=1:计数器接收引脚上的外部信号---计数方式。TF.计数器溢出标志。
TF=1:定时或计数时间到,可以采用查询或中断方 式处理;初值寄存器:预装用来决定计数器产生溢出周期的参数, 此参数决定着定时或计数的周期。通常要预算并送入初 值寄存器中。第11页/共43页135.3定时/计数器的四种工作模式在MCS-51单片机内部,具有两个完全相同的定时计数器T0、T1。它们都具有两种工作方式:定时和计数;无论是定时或计数方式,又都具备四种工作模式,以根据实际要求达到最佳的工作状态。定时计数器的工作方式、工作模式是由SFR中的TMOD内容来决定的。因此对其方式、模式的设定是靠对TMOD的初始化编程实现的。第12页/共43页14模式0:13位计数器模式TH1TL1震荡器1/12(8位)(低5位)TF1中断启动控制T1引脚TR1GATEINT1高三位弃用C/*T=0C/*T=113位加1计数器在某一个初值的基础上加1计数,当计数器计满为全“1”,再来一个计数脉冲时,就产生一个“溢出中断信号”TF1=1。由于低8位计数器中的高三位没有参与工作,故填装初值时应“避开”此三位。第13页/共43页15类同于模式0。由于两个计数器为完整的8位,故将计算好的16位初值可直接填装到TH、TL中。TL1TH1震荡器1/12(8位)(8位)TF1中断启动控制T1引脚TR1GATEINT1C/*T=0C/*T=1模式1:16位计数器模式16位加1计数器第14页/共43页16模式0、1的特点13位和16位的计数器模式。启动后,从某一个初值的基础上进行“加一”计数。当计到“全1”时再来一个计数脉冲,计数器就会产生一个“溢出”即TF=1,此时计数器本身为“全零”。如果需要重复性的完成某一值的定时或计数,需要在每一次计数前不断的重新预装初值,称之为“软件重装初值”。第15页/共43页17TL做计数器,TH做初值寄存器,工作前TL1,TH1分别预置相同的初值。TL1计数时,产生溢出的同时,将TH1中的初值自动重装TL1。TL1继续计数。TL1(8位)TH1(8位)震荡器1/12TF1中断控制T1引脚TR1GATEINT1C/*T=1C/*T=0模式2
:8位自动重装初值模式8位加1计数器8位初值寄存器第16页/共43页18模式2的特点及应用8位计数器的模式,定时或计数的范围远远小于模式0和模式1;具备初值“硬件自动重装”功能,非常适合进行重复性定时的场合,如产生连续方波信号等。编成中省去了软件重装初值的麻烦;在MCS-51单片机中,T1设定成此模式用于做串行口波特率发生器。第17页/共43页19将T0和T1重新进行“拆分、组合”。将T0变为由TH0,TL0组成的两个独立的8位定时/计数器。TL0震荡器1/12TF0中断控制T0引脚TR0GATEINT0C/*T=0C/*T=1TH0TF1中断控制TR1Fosc/12模式3
组合扩展模式(仅适用于T0)第18页/共43页20【注意】:TH0,TL0及T1的各自特点:1,
TH0计数脉冲来自内部fosc,所以它只能处于”定时”方式;2,TH0分别借用了定时器T1的TR1和TF1为自己服务,使TH0能象TL0那样用TR1启动定时,并用TF1来作为TH0的溢出中断的标志;3,此时,由于T1缺少了启动控制信号TR1和溢出标志TF1,那么在模式3时,T1是如何启动和工作?4,模式3就是将单片机原有的T0、T1两个计数器变成三个独立的计数器。其中T1要事先设定为模式2(串行口的波特率发生器)并启动起来。第19页/共43页21在模式3时T0,T1的电路结构图TL0八位定时/计数器TH0八位定时器TL1TF0TF1将T0分解为两个计数器TL0:8位定时/计数器;TH0:8位定时器(借用TR1和TF1)T1(模式2)做波特率发生器。此种方式不用反复启动和查询标志TH1第20页/共43页22GATE信号的作用GATE=0时:当TR1=1时,启动定时/计数工作。 一种定时计数器通常的工作方式;GATE=1且TR=1时:
INT=1时,开始工作;
INT=0时,计数器停止计数。此方式用于测量INT脚上输入的正脉冲的脉宽。TR0=1GATE=1/INT001100启动计数器第21页/共43页23定时/计数器4种模式比较(计数方式)模式计数模M最大计数值模式013位Tmax=213=8192模式116位Tmax=216=
65536模式2,38位Tmax=28=256第22页/共43页24定时/计数器4种模式比较(定时方式)模式计数模M最大定时时间Tmax(fosc=12M)模式013位Tmax=8192*1μЅ
=8.192ms模式116位Tmax=65536*1μЅ=65.536ms模式2,38位Tmax=256*1μЅ=0.256msT=(M-TC)×t其中,T:定时时间,M:计数器的模,TC:计数初值,t:计数器计数脉冲的周期(t=fosc/12)。第23页/共43页255.4定时/计数器的控制和状态寄存器GATE选通门:GATE=0时,只要TR=1,计数器就开始工作;
GATE=1时,只有INT=TR=“1”时,计数器工作(用来测量INT脚高电平脉冲的宽度)。C/T计数、定时方式选择位:C/T=1时,计数方式。
C/T=0时:定时方式。M1、M0模式选择:确定四种工作模式.GATEC/TM1M0GATEC/TM1M0定时/计数器1定时/计数器01.模式控制寄存器TMOD(SFR的地址:89H)第24页/共43页26TF0定时器T0的溢出标志:
计数器溢出时硬件自动置位,即TF0=1。进入中断后再由硬件自动清除(TF0=0);TR0计数器T0的控制位:
由软件设定:TR0=1计数器开始工作;
TR0=0计数器停止计数。TF1、TR1同上。TF1TR1TF0TR0IE1IT1IE0IT02.控制寄存器TCON(SFR地址:88H)第25页/共43页27IE1,IE0外部中断*INT1,*INT0的请求标志:
当单片机检测到INT引脚上有下降沿(或低电平)时,IE=1申请中断.进入中断服务程序时,硬件自动清除IE标志.IT1,IT0外中断触发类型控制:IT=1时,外中断信号的下降沿触发IE标志;
IT=0时,外中断信号的低电平触发IE标志。TF1TR1TF0TR0IE1IT1IE0IT0控制寄存器TCON(SFR地址:88H)第26页/共43页285.5定时/计数器的初值计算计数器TH、TL中的初值TC决定着计数器溢出的时间。根据具体的实际应用的需要,计算出对应的TC值是对定时/计数器初始化的重要步骤;初值TC的大小与系统的工作频率fosc和定时计数器的工作模式有关。第27页/共43页29(一)计数器工作方式下的TC计算TC=M-C其中:M---计数器的模模式0:M=213=8192
模式1:M=216=65536
模式2,3:M=28=256
C---要求的计数值第28页/共43页30(二)定时工作方式下的TC计算TC=M-T/T计数
其中:M---计数器的模 模式0:M=213 =8192
模式1:M=216 =65536
模式2,3:M=28 =256
T计数
---计数周期(即机器周期)=(1/fosc)×12
T---要求的定时时间值第29页/共43页31TC计算举例(一)计数方式:要求每计100个脉冲定时器产生一次溢出。【解1】选择模式2。TC=256-100=156=9CH
MOV TH0,#9CH MOV TL0,#9CH【解2】选择模式1。TC=65536-100=65436=FF9CH
MOV TH0,#0FFH MOV TL0,#9CH【思考题】若选用模式0,TC=?,如何编写指令?第30页/共43页32TC计算举例(二)定时方式:要求T0产生50mS的定式。【解1】选择模式1。TC=M-T/T计数
TC=65536−(50mS*1000)/1μS =65536−50000 =15536=3CB0H
MOV TH0,#3CH MOV TL0,#0B0H【思考题】为什么选择模式1?第31页/共43页335.6定时/计数器的应用学习定时/计数器的编程方法: 首先,根据实际应用,确定:工作方式的选择(定时或计数?);工作模式的确定(取决于定时或计数的范围);计算初值并装载TH、TL寄存器中;启动定时器开始工作。
上述操作主要体现在对TMOD、TCON的初始化。第32页/共43页34(一)定时器方式1应用举例利用单片机的P1.0产生一个频率为100HZ的对称方波。【解】:使用T0。确定工作方式、工作模式和定时初值。1.选择定时方式(C/T=0);2.选择模式1(M1、M0=
01),3.计算初值TC
。TC=65536-5ms/1us=60536=EC78H
即TH=0ECH,TL=78H。
4.试编程。10ms5ms5ms第33页/共43页35用单片机设计一个方波发生器示意图MCS-51P1.0GATEC/TM1M0GATEC/TM1M0TF1TR1TF0TR0IE1IT1IE0IT0TMOD0000
0001TCON第34页/共43页36
ORG0030HSTRAT: MOVTMOD,#01H ;设定时器为定时,模式1
SETBTR0 ;启动定时器T0LOOP: MOVTH0,#0ECH ;设定时初值
MOVTL0,#78H
JNBTF0,$ ;定时时间到?
CLRTF0 ;清T0标志
CPLP1.0 ;P1.0取反
SJMPLOOP ;循环继续
END
程序清单(查询法)第35页/共43页37程序流程图(查询法)设定T0的模式启动T0设定定时初值TF0=0清标志CPLP1.0YN第36页/共43页38思考题:若采用模式0如何编程?
模式0时(13位模式):
TC=8192-5ms/1us=3193=0C78H =0000110001111000B =0110001111000B高8位TH0低5位TL0MOV TH0,#63HMOV TL0,#18H【注意】低8位中的高三位用0来填充,即00011000第37页/共43页39(二)定时器方式1应用举例利用P1.0口线输出周期为2S的方波。【解】如何产生1S(1000ms)的定时?
1000ms的定时由50ms累计20次。1,选择T0且设定为定时方式,模式1。2,TC=65535-50ms/1us=3CB0H3,TMOD控制字为:00000001B=01H4,T0采用中断方式,既每50ms产生一次中断,中断20次便是1S。软件重装初值R0=0?NYCPLP1.02S1S1SP1.020→R0R0-1→R0RETIBRT0中断服务程序第38页/共43页40 ORG0000H LJMPSTART ORG0030HSTART: MOVTMOD,#01H ;设T0为定时方式,模式1
MOVTH0,#3CH
;50mS定时初值
MOVTL0,#0B0H
SETBTR0 ;启动定时器T0 MOVR0,#14H ;计数器R0赋初值20LOOP: JNBTF0,$
;等待50mS定时BRT0: DJNZR0,NEXT
;定时到计数器R0减一,R0≠0,转NEXT
CPLP1.0 ;P1.0输出取反
MOVR0,#14H
;计数器R0重赋初值20NEXT: MOVTH0,#3CH
;软件重装初值
MOVTL0,#0B0H SJMP LOOP ;返回LOOP继续
END查询方式编程第39页/共43页41(三)定时器门控位GATE的应用如果GATE=1,TR=1时电路是否计数取决于/INT0:
/INT0=1
时开始计数;/INT0=0,电路停止计数。利用这一特点,可以实现测量外部脉冲的宽度。计数器震荡器1/12TF0中断计数控制T0引脚TR0GATEINT0C/*T=0C/*T=1MCS-51INT0第40页/共43页42解题步骤:将外部脉
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024高考地理一轮复习第九章第2讲工业地域的形成与工业区教案含解析新人教版
- 2024高考化学二轮复习专题突破练4B元素及其化合物含解析
- 二零二五年度股东分红红利分配与投资计划合同3篇
- 第二章复合材料增强体2017上课讲义
- 小学食品安全管理制度
- 分阶段分层次全过程质量管控机制
- 单病种填报要求(更新至20240911)
- 2024年河北软件职业技术学院高职单招语文历年参考题库含答案解析
- 2024年闸北区市北医院高层次卫技人才招聘笔试历年参考题库频考点附带答案
- 二零二五年度离婚协议中个人隐私保护协议
- 专题6.8 一次函数章末测试卷(拔尖卷)(学生版)八年级数学上册举一反三系列(苏科版)
- GB/T 4167-2024砝码
- 老年人视觉障碍护理
- 《脑梗塞的健康教育》课件
- 《请柬及邀请函》课件
- 辽宁省普通高中2024-2025学年高一上学期12月联合考试语文试题(含答案)
- 《个体防护装备安全管理规范AQ 6111-2023》知识培训
- 青海原子城的课程设计
- 2023年年北京市各区初三语文一模分类试题汇编 - 作文
- 第二讲VSP地震勘探
- 干砌石护坡工程施工组织设计方案
评论
0/150
提交评论