




已阅读5页,还剩41页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1,第九章MCS-51定时器/计数器与中断系统,2020/6/14,微机系统原理及应用,微机系统原理及应用,2020/6/14,内容提要,MCS-51的定时器/计数器(重点)增强型MCS-51的T2定时器(了解)MCS-51的中断系统(重点),2020/6/14,9.1MCS-51的定时器/计数器,MCS-51的计数是加计数。,计数功能:对从引脚输入的脉冲计数。,定时功能:对来自内部时钟电路的计数脉冲进行计数。,TMOD(89H),TCON(88H),2020/6/14,TCON(88H):可位寻址的特殊功能寄存器。,编程指令采用CLRTR0/TR1SETBTR0/TR1,1)定时器控制寄存器(TCON),2020/6/14,没有位寻址功能只能使用字节传送MOVTMOD,#.,TMOD(89H):不可位寻址的特殊功能寄存器。,门控位GATE=0:以运行控制位TR0/TR1启动定时/计数功能。GATE=1:以运行控制位TR0/TR1启动定时/计数功能之前,应先将外部中断置1。,定时/计数方式选择位0为定时1为计数,工作方式选择位,2)工作方式控制寄存器(TMOD),2020/6/14,9.1.2定时器/计数器的工作方式,方式3,7,1)方式0,(a)T0或T1方式0的结构,2020/6/14,方式0是13位计数结构的工作方式,其计数器由THi全部8位和TLi的低5位构成。,8,方式0定时和计数应用,2020/6/14,在方式0下的输入脉冲的计数值范围是:18192(213)当为定时工作方式时,定时时间的计算公式为:(213计数初值)晶振周期12最小定时单位:1个机器周期(12Tost)最大定时单位:12Tost213,机器周期,2020/6/14,方式0的信号流图,图9-6方式0简图,MOVTMOD,#00000000SETBTR0MOVTH0,#_MOVTL0,#_,MOVA,TMODANLA,#F0HORLA,#0_HMOVTMOD,A,10,例,某MCS-51微控制器应用系统,晶体频率为12MHz,请计算在方式0下的最小、最大定时时间?如果使用定时器T0来记录时间,当要求定时器每5ms能向CPU发出一个定时处理请求,定时器的计数器中装入的初始值为多少?试编程完成处始化任务。解:最小定时时间:最大定时时间:5ms需要的计数为510-3/110-6=5000;计数初值为:81925000=31923192=0C78h=01100011,11000B(分为高8位与低5位),2020/6/14,11,初始化语句,MOVA,TMODANLA,#F0HORLA,#00H;T0无GATE,Timer,Mode0MOVTMOD,ASETBTR0MOVTH0,#63H;01100011BMOVTL0,#18H;11000B,2020/6/14,思考:如果是采用T1,应该怎样做?,12,2)方式1,(b)T0或T1方式1的结构,2020/6/14,方式1是16位计数结构的工作方式,其计数器由THi全部8位和TLi的全8位构成。,13,方式1定时和计数应用,2020/6/14,在方式1下的输入脉冲的计数值范围是:165536(216)当为定时工作方式时,定时时间的计算公式为:(216计数初值)晶振周期12最小定时单位:1个机器周期(12Tost)最大定时单位:12Tost216,机器周期,14,例,某MCS-51微控制器应用系统,晶体频率为12MHz,请计算在方式1下的最小、最大定时时间?如果使用定时器T0来记录时间,当要求定时器每5ms能向CPU发出一个定时处理请求,定时器的计数器中装入的初始值为多少?试编程完成处始化任务。,2020/6/14,15,另解,如果选用方式1,是16位方式,计算范围为216=65536,计数初值为:655365000=60536=EC78H初始化语句:MOVA,TMODANLA,#F0HORLA,#01H;T0无GATE,Timer,Mode1MOVTMOD,ASETBTR0MOVTH0,#0ECH;01100011BMOVTL0,#78H;11000B,2020/6/14,2020/6/14,3)方式2信号流图,方式2为重装自动初值的8位定时/计数器。,TLi:计数器THi:初值寄存器计数范围:1256(28)TLi计满溢出后,由硬件自动将THi中的初值重新装入TLi。,2020/6/14,方式2的优缺点,缺点:长时间定时、大范围计数是不合适的。优点:初值由硬件重装,因此溢出周期非常的准确;软件重装初值难免或多或少的延误,不够准确。,2020/6/14,4)T0的方式3信号流图,这种方式并不常用。,19,例,Intel8051的时钟频率为12MHz,定时器最长的定时时间是:()A10us8192us65536us256us,2020/6/14,2020/6/14,例9-3,在某牛奶自动灌装线上,每检测到20瓶,产生一个装箱指令脉冲,使相关设备动作。试用MCS-51型微控制器的计数器实现该控制要求。检测信号从T1引脚(P3.5)输入,指令脉冲从P1.2输出。,2020/6/14,解:,自动灌装线上装有传感装置,每检测到一瓶牛奶向T1引脚发送一个脉冲信号;使用计数功能,可实现该控制要求;选T1的方式2;初值为256-20=236=ECh。,2020/6/14,CSEGAT0000HLJMPSTARTMCSEGMENTCODERSEGMCSTART:CLRT1;清除输出MOVTMOD,#60H;T1,无GATE,计数,方式2MOVTL1,#0ECH;初值MOVTH1,#0ECH;初值SETBTR1;启动LOOP:WAIT:JBCTF1,OUTAJMPWAITOUT:SETBP1.2NOPNOPNOPCLRP1.2AJMPLOOPEND,程序:,2020/6/14,9.3MCS-51中断系统,中断的概念(程序的正常、异常)中断源优先级管理中断的响应过程(条件)中断服务程序应用举例,一、中断的概念,中断:在微机系统中,中断是指CPU在执行某段程序的过程中,由于某一事件的发生,要求CPU暂时停止正在执行的程序,而去执行相应的处理程序,待处理结束后,再返回到原来程序停止处继续执行。,中断的概念,执行主程序,主程序,继续执行主程序,断点,中断请求,中断响应,执行中断处理程序,中断返回,家中看书,电话铃响,书中做记号,放下书,去接电话,电话交谈,放下电话,返回,继续看书,二、MCS-51的中断源,中断源:把可以引起中断的事件称为中断源。MCS-51是一个多中断源的单片机,共有三种类型5个中断源:INT0:外部中断0中断请求;INT1:外部中断1中断请求;T0:定时/计数器0溢出中断请求;T1:定时/计数器1溢出中断请求;TxD/RxD:串行口通信中断请求。,外部中断,定时中断,串行中断,外部中断:外部原因产生的中断称为外中断。,电平方式的中断请求是低电平有效。,脉冲方式的中断请求则是脉冲的后沿(负跳变)有效。,定时中断:为满足单片机内部定时/计数器的需要而设置的中断,属于内部中断。,串行中断:为单片机内部串行口接受和发送数据而设置的中断,也属于内部中断。,CPU识别中断申请的依据:,CPU在每个机器周期的S5P2期间,会自动查询各个中断申请标志位,若查到某标志位被置位,将启动中断机制。,S5P2期间,三、与中断有关的SFR,定时器控制寄存器TCON(88H):低4位管理外部中断。,(1)外部事件中断请求标志位IE0和IE1,=0:没有外部中断申请;=1:有外部中断申请。,(2)外部中断请求的触发方式选择位IT0和IT1=0:电平触发方式;=1:脉冲触发方式。,例,要求INT0引脚的中断请求信号为低电平有效,INT1引脚的中断请求信号为脉冲后沿有效,请设计TCON的有关位。,CLRIT0,SETBIT1,串行口控制寄存器SCON(98H),(1)TI:串行口发送中断请求标志位,当串行口发送缓冲器发送完一帧数据后,由硬件自动把TI置1,以此向CPU请求中断。,(2)RI:串行口接收中断请求标志位,当串行口接收缓冲器接收完一帧串行数据后,由硬件把RI置1;以此向CPU请求中断。,MCS-51中断系统总图,中断允许控制寄存器IE(A8H):对所有中断源的开放和允许进行控制,可位寻址。,(1)EA:CPU中断允许总控制位。EA=0:中断总禁止,禁止所有中断。EA=1:中断总允许,置1后,各中断源的中断允许由各个控制位进行设置。(2)EX0/EX1:外部中断允许控制位;=0:禁止外部中断INT0/INT1;=1:允许外部中断INT0/INT1。,中断允许控制寄存器IE(A8H):对所有中断源的开放和允许进行控制,可位寻址。,(3)ET0/ET1:定时/计数中断允许控制位;=0:禁止定时/计数器的定时中断;=1:允许定时/计数器的定时中断。(4)ES:串行口中断允许控制位。=0:禁止串行口中断;=1:允许串行口中断。,结论:MCS-51单片机中的各个中断源均为可屏蔽中断。,MOVIE,#10010110B或:SETBEA;CPU开放中断SETBEX1;允许中断SETBET0;允许定时/计数器溢出中断SETBES;允许串行口中断,例,若想实现单片机开放中断,允许外部事件INT1中断、定时/计数器T0溢出中断和串行口中断,应如何设置中断允许寄存器IE?,设定程序如下:,MCS-51中断系统总图,中断优先级控制寄存器IP(B8H):对所有中断源的优先级进行设定,可位寻址。,(1)PX0:为外部事件中断的优先级设定位;(2)PT0:为定时/计数器T0的溢出中断优先级设定位;(3)PX1:为外部事件中断的优先级设定位;(4)PT1:为定时/计数器T1的溢出中断的优先级设定位;(5)PS:为串行口中断的优先级设定位。,设置为“0”的位,为低优先级;设置为“1”的位,为高优先级。,表9-3中断优先级与中断向量,若都被设置成同一优先级,5个中断源的自然优先级由硬件形成,排列如表9-3所示。,MCS-51单片机各个中断源的中断处理程序入口地址是固定的。,四、中断处理过程,主程序,中断请求,EA=1;此中断源的中断允许位是否为1,中断响应,接受中断申请断点地址保护中断向量地址装入PC,中断处理程序,根据不同中断源的申请,完成各中断申请要做的事。,中断返回,中断源及其对应的中断向量地址,中断源,中断向量地址,外部中断0中断地址区,0003H000AH,定时/计数器0中断地址区,000BH0012H,外部中断1中断地址区,0013H001AH,定时/计数器1中断地址区,001BH0022H,串行通信中断,0023H002AH,外部中断0申请,CPU保存当前PC值,0003H装入PC,执行中断服务程序INT0,ORG0003HLJMPINT0_PROORG6000HRETI,INT0_PRO:,举例:,某单片机系统使用了全部5个中断源,其中INT0和串行口中断为高级中断,其他3个中断为低级中断,INT0为低电平有效,INT1为下跳沿有效,请设置有关的专用寄存器。,程序编程格式,ORG0000HLJMPMAINORG0003HLJMPINT0_SERORG000BHLJMPT0_SERORG0013HLJM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大使馆防诈骗知识培训内容课件
- 桥梁工程信息化管理方案
- 公司紧固件镦锻工综合考核试卷及答案
- 公司胶基糖制造工数字化系统操作考核试卷及答案
- 公司配料熔制工职业技能考核试卷及答案
- 户型产品基础知识培训
- 乙烯生产线项目建设工程方案
- 建筑项目工程费用审核方案
- 项目进度延误补救措施方案
- 建筑综合维修保养方案
- 2025年屠检考务试卷及答案
- 五金材料知识培训课件
- 2025年学校少先队知识应知应会题库(含答案)
- 2026中国农业银行秋季校园招聘备考考试题库附答案解析
- 校园科技教育主题班会活动方案
- 中海油劳动合同范本(标准版)
- 施工机械设备情况及进场计划
- 关注儿童保护眼睛健康科普知识PPT
- 红十字会救护员培训理论试题附答案
- SF∕T 0097-2021 医疗损害司法鉴定指南
- T∕CCCMHPIE 1.2-2016 植物提取物 槟榔多糖多酚
评论
0/150
提交评论