单片机简易秒表的设计

上传人:飞*** 文档编号:49278272 上传时间:2018-07-26 格式:PPT 页数:66 大小:339.50KB
返回 下载 相关 举报
单片机简易秒表的设计_第1页
第1页 / 共66页
单片机简易秒表的设计_第2页
第2页 / 共66页
单片机简易秒表的设计_第3页
第3页 / 共66页
单片机简易秒表的设计_第4页
第4页 / 共66页
单片机简易秒表的设计_第5页
第5页 / 共66页
点击查看更多>>
资源描述

《单片机简易秒表的设计》由会员分享,可在线阅读,更多相关《单片机简易秒表的设计(66页珍藏版)》请在金锄头文库上搜索。

1、情境三 简易秒表n子情境一 中断系统 n子情境二 定时/计数器 n子情境三 基于单片机控制的秒表1子情境一 中断系统n一、任务目标 n 通过学习使读者了解中断的基本概念,中断的执行 过程,中断的控制方法和具有中断的单片机控制程序编 写。n二、任务分析n 当CPU正在处理某项事务的时候,如果系统出现了 某些急需处理的异常情况或特殊的请求,这时要求CPU 暂停正在处理的工作,而转去处理这个随机发生的紧急 或特殊事件,待该事件处理完后,自动回到原来被中断 的地方,继续执行被中断的程序,这个过程称做中断。 2n 51系列单片机中断系统,是众多8位单片机中功能 较强的一种,可以提供5个中断源,分别是外部

2、中断0、 外部中断1、定时/计数器T0、定时/计数器T1和串行口 中断。 n中断处理过程由以下几个阶段完成。n(1)中断请求n当中断源发出中断请求时,将相应的中断请求标志位置 “1”。子情境一 中断系统3n(2)中断允许控制n 51系列单片机有专门的中断允许寄存器IE对中断源 的开放或屏蔽进行两级控制。当IE的控制位EA=“0”时, 屏蔽所有的中断申请;当EA=“1”时,CPU开放允许控制 的第一级,但5个中断源是否响应中断请求,还要看IE中 与这5个中断源直接对应的中断允许控制位的状态,当 对应位的状态为“1”时,则允许响应相应的中断请求,否 则不响应中断请求。 子情境一 中断系统4n (3

3、)中断查询n CPU查询TCON和SCON中的各个中断标志位的状态 ,确定有哪个中断源发生请求,查询时根据中断优先级 控制寄存器IP的状态,按优先级顺序进行,如果查询某个 中断源所对应的中断标志位为“1”,表明有中断请求发生 ,在中断允许的情况下,紧接着从下一机器周期开始进 行中断响应。 子情境一 中断系统5n(4)中断响应n1)中断响应条件n 51系列单片机CPU响应中断的条件有以下3个。n 有中断源发出中断请求。n 中断总允许控制位EA=“1”,即CPU允许所有中断源申 请中断。n 申请中断的中断源其中断允许控制位为“1”,即该中断 源可以向CPU申请中断。n当以上3个条件都满足时,中断请

4、求才可能被CPU响应。 子情境一 中断系统6n 2)中断响应过程n 当中断源发出中断请求后,满足中断响应条件,且不 存在受阻情况时,CPU将立即响应该中断请求,如有多个 中断源同时提出中断请求时,将按中断源的优先级别做出 响应,先响应高优先级的中断源,后响应低优先级的中断 源。在响应中断请求后,先将断点地址压入堆栈保存,以 备中断结束后返回原程序;接着将相应中断处理程序的入 口地址送入程序计数器PC,使程序转向该中断入口地址, 并执行中断服务程序。子情境一 中断系统7n(5)中断处理n 中断处理分保护现场、中断服务、恢复现场和中断返 回4个步骤。保护现场是指中断响应后,在中断服务程序 的开头采

5、用PUSH指令将服务程序中要使用的累加器、通 用寄存器中的数据压入堆栈。在现场保护时应关闭中断, 预防正在保护数据时又响应中断级别更高(中断嵌套)的 中断请求,而丢失数据;然后紧接着根据中断事件的要求 编写中断服务程序;在中断服务结束后,立即关闭中断, 然后通过POP指令恢复现场;最后用中断返回指令RETI, 硬件自动将存放在堆栈中的断点地址弹出至PC,使CPU继 续执行原来的程序。子情境一 中断系统8n三、相关知识 n 下面对中断控制中用到的4个专用寄存器的相关知识 进行讲解。n 51系列单片机为用户提供了4个专用寄存器:定时/计 数器控制寄存器TCON、串行口控制寄存器SCON、中断 允许

6、控制寄存器(IE)、中断优先级控制寄存器IP,来 控制单片机的中断系统。子情境一 中断系统9n1定时/计数器控制寄存器n 该寄存器用于锁存外部中断请求标志以及定时/计数 器的溢出中断请求标志等。进行字节操作时,寄存器地 址为88H;按位操作时,各位的地址为88H8FH。寄存 器各位的含义及位地址如表4-2所示。 位地址8FH8EH8DH8CH8BH8AH 89H88H位符号TF1TR1TF0TR0IE1IT1IE0IT0子情境一 中断系统表4-2定时/计数器控制寄存器10 其中与中断有关的控制位共4位。 (1)IT0 和IT1外部中断T0和T1的中断请求触发方式 控制位 IT0(IT1)=1:

7、脉冲触发方式,下降沿有效(下降沿时产 生中断请求)。 IT0(IT1)=0:电平触发方式,低电平有效(低电平时产 生中断请求)。 (2)IE0和IE1外中断请求标志位 当CPU采样到(或)端出现有效中断请求信号时,IE0( IE1)位由硬件置1,当中断响应完成转向中断服务程序时 ,由硬件把IE0(或IE1)清0。 高4位的功能在本章第二节中讲解。子情境一 中断系统11n2串行口控制寄存器n 进行字节操作时,寄存器地址为98H;按位操作时, 各位的地址为98H9FH。寄存器的各位含义及位地址如 表4-3所示。 位地址 9FH 9EH9DH9CH9BH9AH99H98H位符号 SM0SM1SM2R

8、ENTB8RB8TIRI表4-3 串行口控制寄存器子情境一 中断系统12n 其中与中断有关的控制位共两位。n(1)TI串行口发送中断请求标志位n 当发送完一帧串行数据后,由硬件置1;在转向中断 服务程序后,用软件清0。n(2)RI串行口接收中断请求标志位n 当接收完一帧串行数据后,由硬件置1;在转向中断 服务程序后,用软件清0。串行中断请求由TI和RI的逻辑 或得到,即无论是发送标志还是接收标志,都会产生串行 中断请求。子情境一 中断系统13n3中断允许控制寄存器n 进行字节操作时,寄存器地址为0A8H;按位操作时 ,各位的地址为0A8H0AFH。寄存器的各位含义及位地 址如表4-4所示。 表

9、4-4 中断允许控制寄存器位地址AFHAEHADHACHABHAAHA9HA8H位符号EA / /ESET1EX1ET0EX0子情境一 中断系统14n 其中与中断有关的控制位共6位。 (1)EA中断允许总控制位 EA=0:中断总禁止,禁止所有中断。 EA=1:中断总允许,总允许后中断的禁止或允许 由各中断源中断允许控制位进行设置。 (2)EX0和EX1外部中断0和外部中断1的中断 允许控制位。 EX0(EX1)=0:禁止外部中断。 EX0(EX1)=0:允许外部中断。子情境一 中断系统15 (3)ET0和ET1定时/计数器中断允许控制位 ET0(ET1)=“0”:禁止定时/计数器中断。 ET0

10、(ET1)=“1”:允许定时/计数器中断。 (4)ES串行中断允许控制位 ES=“0”:禁止串行中断。 ES=“1”:允许串行中断。子情境一 中断系统16 4中断优先级控制寄存器 51系列单片机的中断优先级控制比较简单,因为系统 只定义了高、低两个优先级。高优先级用“1”表示,低优先 级用“0”表示。各中断源的优先级由中断优先级寄存器进行 设定。IP寄存器地址为0B8H,位地址为0BFH0B8H。 该寄存器的位含义及位地址如表4-5所示。位地址BFHBEHBDHBCHBBHBAHB9HB8H 位符号/PSPT1PX1FT0PX0表4-5 中断优先级控制寄存器子情境一 中断系统17 (1)PX0

11、外部中断0的中断优先级设定位; (2)PT0定时/计数器0的中断优先级设定位; (3)PX1外部中断1的中断优先级设定位; (4)PT1定时/计数器1的中断优先级设定位; (5)PS串行口中断优先级设定位。 以上各位设置为0时,则相应的中断源为低优先级; 设置为1时,则相应的中断源为高优先级。子情境一 中断系统18 优先级的控制原则是: 当两个不同优先级的中断源同时提出中断请求,低优 先级中断请求不能打断高优先级的中断服务;但高优先级 中断请求可以打断低优先级的中断服务,从而实现中断嵌 套,51系列单片机最多只有两级中断嵌套。 如果同级的多个中断同时出现,则按CPU查询次序确 定哪个中断请求被

12、响应。其查询次序为 外部中断0定时/计数器0溢出中断外部中断1定 时/计数器1中断串行中断。子情境一 中断系统19n1简述中断处理过程。n2简述中断编程结构。n3单片机如何确定5个中断源的中断优先级别?分别写 出中断优先级控制寄存器IP=05H和IP=00H时5个中断源 的中断优先级顺序。n4用伟福6000软件或Keil uVision2软件输入本节任务二 的源程序并编译调试。n5用Proteus软件绘制出本节任务二仿真电路图并仿真 运行。n6根据本节任务二的电路原理图连接成电路板,用编程 器将仿真通过的程序烧录到单片机中,脱机运行并观察 电路运行情况。子情境一 中断系统 思考与练习20n一、

13、任务目标n 本任务让读者掌握定时/计数器的工作原理,掌握定 时/计数器的工作方式及定时/计数初值的计算,熟悉定 时/计数器的编程结构,了解定时/计数器的应用领域。n二、任务分析n 51系列单片机有两个16位可编程的定时/计数器, 分别称为定时/计数器T0和T1。其实就是由两个独立的8 位专用寄存器TH0,TL0和TH1,TL1组成16位加法计数 器。它们各自都兼有定时和计数的功能。分别由工作方 式寄存器TMOD和控制寄存器TCON对定时/计数器的工作 方式、启停及溢出中断请求进行控制。子情境二 定时/计数器 21n1定时/计数器工作在定时方式时n 当定时/计数器工作方式寄存器TMOD中的功能选

14、择 位为“0”时,定时/计数器工作于定时方式。此时定时器T0 或T1对机器周期进行计数,当启动控制位TR0和TR1为1时 ,定时器就从某一初始值开始计数,每一机器周期定时器 加1,当计数值达到最大值时计数溢出,将定时器的溢出 标志位TF0或TF1置1,并提出一次中断请求,如允许定时 器中断的话,将产生一次定时器中断,进行定时器溢出中 断服务处理;如采用查询方式进行定时器溢出处理的话, 则程序查询到TF0或TF1位为1时,就进行相应的定时器溢 出处理操作。子情境二 定时/计数器22n 2定时/计数器工作在计数方式时n 当定时/计数器工作方式寄存器TMOD中的功能选择 位为“1”时,定时/计数器工

15、作于计数方式。此时计数器T0 或T1对外部计数脉冲(外部引脚T0(P3.4)或T1(P3.5 )输入的计数脉冲信号)进行计数,每来一个外部输入 脉冲信号计数器加1。在计数工作方式时,单片机每个机 器周期对外部引脚T0(P3.4)或T1(P3.5)电平进行一 次采样,当在某一机器周期采样到高电平,跟接着在下 一机器周期采样到低电平时,则在再下一机器周期计数 器加1;所以计数工作方式时是对外部输入的负脉冲进行 计数,计数器每次加1需用两个机器周期,则计数脉冲信 号的最高频率为机器周期频率的二分之一。 子情境二 定时/计数器23n 当启功控制位TR0和TR1位为1时,计数器从某一初始 值开始计数,每来一个外部计数脉冲计数器加1,当计数 值达到最大值时,计数器溢出,将计数器的溢出标志位 TF0或TF1置“1”,并提出一次中断请求,如允许计数器中 断的话,将产生一次中断请求,进行计数器溢出中断服务 处理

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号