微型计算机MCS-51单片机的中断与定时.pptVIP

  • 6
  • 0
  • 约1.01万字
  • 约 72页
  • 2017-12-27 发布于河南
  • 举报

微型计算机MCS-51单片机的中断与定时.ppt

微型计算机MCS-51单片机的中断与定时

第5章 51单片机的中断与定时 定时器控制寄存器TCON 第5章 51单片机的中断与定时 中断允许控制寄存器(IE) 第5章 51单片机的中断与定时 中断优先级控制寄存器(IP) 1. 中断请求 2. 中断查询 3. 中断响应 4. 中断服务 5. 中断返回 1.定时/计数器中断请求标志的撤除 2.串行口中断请求标志的撤除 3.外部中断请求的撤除 1.中断初始化程序 2.中断服务程序 3.中断程序的结构 对外中断0开中断,则中断允许寄存器IE设置 1.定时器工作方式寄存器(TMOD) 2. 定时器控制寄存器(TCON) 1.方式0 ── 13位定时器/计数器 定时/计数器0工作在方式0时的结构 2.方式1 ── 16位定时器/计数器 3. 方式2 ── 8位可自动重装初值的 定时器/计数器 4.方式3 ── T0分成两个8位计数器 T1停止计数 初值的计算 因为晶振频率为12MHz,所以机器周期为: 如果采用定时功能工作方式1,则初值为: 定时器方式寄存器TMOD的设置 工作中查询定时器0的溢出标志位TF0 定时器方式寄存器TMOD的设置 中断允许寄存器IE的设置 解 题 思 路 定时器方式寄存器TMOD的设置 中断允许寄存器IE的设置 【例5-9】源程序: 【例5-9】源程序(续): 第5章 51单片机的中断与定时 ORG 0000H LJMP MAIN ORG 001BH ;T1中断入口 LJMP INTT1 ORG 0100H ;主程序 MAIN: MOV TMOD, #60H ;设T1为方式2计数 MOV TL1, #0F6H ;T0置初值 MOV TH1, #0F6H MOV IE, #88H SETB TR1 ;启动T1开始计数 HERE: SJMP HERE ORG 0200H ;T1中断服务程序 INTT1: CPL P1.0 ;P1.0位取反 RETI END 第三节 51单片机的定时器/计数器 第5章 51单片机的中断与定时 【例5-9】 51单片机P1.0~P1.7分别通过反相器接8个发光二极管,要求用T1定时编写程序,每隔1s循环点亮1只发光二极管,一直循环下去,已知系统的晶振频率为6MHz 第三节 51单片机的定时器/计数器 第5章 51单片机的中断与定时 第三节 51单片机的定时器/计数器 要求每隔1s循环点亮1只发光二极管,则定时器T1需要定时1s,这个值超过了定时器的最大定时时间。为此,可采用定时器定时与软件计数相结合的方法来解决问题。本题用定时器T1,每隔0.1s中断1次,向CPU申请中断,用R0计中断的次数。当R0计到10次中断时,则1秒时间到,循环点亮下1只发光二极管 第5章 51单片机的中断与定时 第三节 51单片机的定时器/计数器 所以,TH1=3CH,TL1=B0H 定时器T1的初值: TMOD= 0001 0000 B=10H 第5章 51单片机的中断与定时 第二节 MCS-51单片机的中断系统 【例5-3】 设外部中断0为下降沿触发方式,高优先级,试编写中断初始化程序。 解法一:用位操作指令: SETB IT0 ;下降沿触发中断请求 SETB EX0 ;外中断0开中断 SETB EA ;开中断允许总控制位 SETB PX0 ;外中断0高优先级 解法二:用字节指令也可对IE和IP进行设置: SETB IT0 ;下降沿触发中断请求 MOV IE,#81H ;同时置位EA和EX0 ORL IP,#01H ;置位PX0 中断服务程序是一种为中断源的特定要求服务的独立程序段,以中断返回指令RETI结束,中断服务完后返回到原来被中断的地方(即断点)继续执行原来的程序 在中断响应过程中,断点的保护主要由硬件电路自动完成。 用户在编写中断服务程序时需要考虑保护现场的问题。 第5章 51单片机的中断与定时 第二节 MCS-51单片机的中断系统 第5章 51单片机的中断与定时 第二节 MCS-51单片机的中断系统 主程序结构: ORG 0000H LJMP MAIN ORG 中断入口 LJMP INT ┇ ORG XXXXH MAIN: 主程序 ┇ INT: 中断服务程序 ┇ END 中断服务程序结构: INT: CLR EA ;关中断 PUSH PSW;现场保护 PUSH

文档评论(0)

1亿VIP精品文档

相关文档