找回密码
 注册

QQ登录

只需一步,快速开始

查看: 648|回复: 0

大工20秋《单片机原理及应用》复习资料九

[复制链接]
发表于 2021-3-5 09:47:25 | 显示全部楼层 |阅读模式
单片机原理及应用辅导资料九主    题:课件第五章第1-3节
学习时间:2020年5月25日--5月31日
“不忘初心、牢记使命”主题理论学习:
每周文摘: “我们既要绿水青山,也要金山银山。宁要绿水青山,不要金山银山,而且绿水青山就是金山银山。”要按照绿色发展理念,树立大局观、长远观、整体观,坚持保护优先,坚持节约资源和保护环境的基本国策,把生态文明建设融入经济建设、政治建设、文化建设、社会建设各方面和全过程,建设美丽中国,努力开创社会主义生态文明新时代。
摘选自《习近平总书记系列重要讲话读本》课程内容:
我们这周主要学习课件第五章输入、输出、中断和串行通讯第1-3节的相关内容。希望通过下面的内容能使同学们加深对单片机相关知识的理解。一、学习要求
了解I/O接口的概念及编址方式;了解输入输出传送方式;掌握中断的概念及中断的处理过程。二、主要内容
1.I/O概述
1)I/O接口电路的作用
一个计算机系统的组成, 除了CPU、存储器外,还必须有外部设备。计算机通过输入/输出设备和外界进行通信。计算机所用的数据以及现场采集的各种信息都要通过输入设备送到计算机;而计算的结果和计算机产生的各种控制信号又需通过输出设备输出到外部设备。
计算机的I/O操作,即CPU和外部设备之间的数据传送却十分复杂。主要表现在以下几个方面:
     (1) 外部设备的工作速度与计算机相比要低得多。
     (2) 外部设备的种类繁多, 有机械式、 机电式及电子式等等。
     (3) 外部设备的数据信号是多种多样的,既有电压信号, 也有电流信号; 既有数字量, 还有模拟量。
     (4) 外部设备的数据传送有近距离的,也有远距离的;有的使用并行数据传送,而有的则使用串行传送数据。
具体说来,接口电路主要有以下几项功能:
        (1) 速度协调。
        (2) 数据锁存。
        (3) 三态缓冲。
        (4) 数据转换。
2)接口与端口
“接口”一词是从英文interface翻译过来的,具有界面、相互联系等含义。接口这个术语在计算机领域中应用十分广泛,本章所讲述的接口则特指计算机与外设之间在数据传送方面的联系,其功能主要是通过电路实现的, 因此称之为接口电路,简称接口。
3)I/O的编址方式
在计算机中,凡需进行读写操作的设备都存在着编址问题。具体说来在计算机中有两种需要编址的器件:一种是存储器,另一种就是接口电路。 存储器是对存储单元进行编址,而接口电路则是对其中的端口进行编址。 对端口编址是为I/O操作而进行的,  因此也称为I/O编址。
常用的I/O编址有两种方式: 独立编址方式和统一编址方式。
        (1) 独立编址方式
        (2) 统一编址方式2.输入/输出传送方式
1)无条件传送方式
无条件传送也称为同步程序传送,类似于CPU和存储器之间的数据传送。只有那些一直为数据I/O传送作好准备的外部设备,才能使用无条件传送方式。  这种传送方式不需要测试外部设备的状态,可以根据需要随时进行数据传送操作。 无条件传送方式适用于以下两类外部设备的输入输出:
(1) 外设的工作速度非常快, 足以和CPU同步工作。
(2) 具有常驻的或变化缓慢的数据信号的外设。
2)查询传送方式
查询传送又称为条件传送, 即数据的传送是有条件的。 在输入/输出之前,  先要检测外设的状态, 以了解外设是否已为数据输入输出作好了准备, 只有在确认外设已“准备好”的情况下, CPU才能执行数据输入/输出操作。 通常把通过程序对外设状态的检测称之为“查询”, 所以这种有条件的传送方式又叫做程序查询方式。
3)中断传送方式
由于查询传送方式为CPU主动要求传送数据,而它又不能控制外设的工作速度,因此只能用等待的方式来解决配合的问题。中断方式则是在外设为数据传送作好准备之后,就向CPU发出中断请求信号(相当于通知CPU),CPU接收到中断请求信号之后立即作出响应,暂停正在执行的原程序(主程序),而转去为外设的数据输入输出服务,待服务完之后,程序返回,CPU再继续执行被中断的原程序。
由于CPU的工作速度很快,传送1次数据(包括转入中断和退出中断)所需的时间很短。对外设来讲,似乎是对CPU发出数据传送请求的瞬间,CPU就实现了;对主程序来讲,虽然中断了1个瞬间,但由于时间很短,也不会有什么影响。 3.80C51的中断系统
(1)基本概念
①中断
CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生);
CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务);
待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回),这一过程称为中断。如图1所示。
图1②中断源、中断返回和中断系统
引起CPU中断的根源,称为中断源。
中断源向CPU提出的中断请求。CPU暂时中断原来的事务A,转去处理事件B。对事件B处理完毕后,再回到原来被中断的地方(即断点),称为中断返回。
实现上述中断功能的部件称为中断系统(中断机构)。
③中断的优点
随着计算机技术的应用,人们发现中断技术不仅解决了快速主机与慢速I/O设备的数据传送问题,而且还具有如下优点:
分时操作:CPU可以分时为多个I/O设备服务,提高了计算机的利用率;
实时响应:CPU能够及时处理应用系统的随机事件,系统的实时性大大增强;
可靠性高:CPU具有处理设备故障及掉电等突发性事件能力,从而使系统可靠性提高。
(2)80C51中断系统的结构
80C51的中断系统有5个中断源,2个优先级,可实现二级中断嵌套。
图2
①80C51的中断源
(P3.2)
可由IT0(TCON.0)选择其为低电平有效还是下降沿有效。当CPU检测到P3.2引脚上出现有效的中断信号时,中断标志IE0(TCON.1)置1,向CPU申请中断。
(P3.3)
可由IT1(TCON.2)选择其为低电平有效还是下降沿有效。当CPU检测到P3.3引脚上出现有效的中断信号时,中断标志IE1(TCON.3)置1,向CPU申请中断。
TF0(TCON.5)
片内定时/计数器T0溢出中断请求标志。当定时/计数器T0发生溢出时,置位TF0,并向CPU申请中断。
TF1(TCON.7)
片内定时/计数器T1溢出中断请求标志。当定时/计数器T1发生溢出时,置位TF1,并向CPU申请中断。
RI(SCON.0)或TI(SCON.1)
串行口中断请求标志。当串行口接收完一帧串行数据时置位RI或当串行口发送完一帧串行数据时置位TI,向CPU申请中断。 ②中断请求标志

图3③80C51中断的允许控制
CPU对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器IE控制的。对应控制位为1,则相应中断源允许,否则屏蔽该中断源。复位时,全部清0,禁止所有中断。

图4④中断优先级控制
80C51单片机有两个中断优先级,即可实现二级中断服务嵌套。每个中断源的中断优先级都是由中断优先级寄存器IP中的相应位的状态来规定的 。

图5同一优先级中的中断申请不止一个时,则有中断优先权排队问题。同一优先级的中断优先权排队,由中断系统硬件确定的自然优先级形成,其排列如图6所示:

图680C51单片机的中断优先级有三条原则:
CPU同时接收到几个中断时,首先响应优先级别最高的中断请求。
正在进行的中断过程不能被新的同级或低优先级的中断请求所中断。
正在进行的低优先级中断服务,能被高优先级中断请求所中断。
为了实现上述后两条原则,中断系统内部设有两个用户不能寻址的优先级状态触发器。其中一个置1,表示正在响应高优先级的中断,它将阻断后来所有的中断请求;另一个置1,表示正在响应低优先级中断,它将阻断后来所有的低优先级中断请求。4.80C51的中断处理过程
(1)中断响应条件和时间
①中断响应条件
中断源有中断请求;
此中断源的中断允许位为1;
CPU开中断(即EA=1)。
同时满足时,CPU才有可能响应中断。
②中断服务的进入
CPU执行程序过程中,在每个机器周期的S5P2期间,中断系统对各个中断源进行采样。这些采样值在下一个机器周期内按优先级和内部顺序被依次查询。
如果某个中断标志在上一个机器周期的S5P2时被置成了1,那么它将于现在的查询周期中及时被发现。接着CPU便执行一条由中断系统提供的硬件LCALL指令,转向被称作中断向量的特定地址单元,进入相应的中断服务程序。
遇以下任一条件,硬件将受阻,不产生LCALL指令:
CPU正在处理同级或高优先级中断;
当前查询的机器周期不是所执行指令的最后一个机器周期。即在完成所执行指令前,不会响应中断,从而保证指令在执行过程中不被打断;
正在执行的指令为RET、RETI或任何访问IE或IP寄存器的指令。即只有在这些指令后面至少再执行一条指令时才能接受中断请求。
若由于上述条件的阻碍中断未能得到响应,当条件消失时该中断标志却已不再有效,那么该中断将不被响应。就是说,中断标志曾经有效,但未获响应,查询过程在下个机器周期将重新进行。③中断响应时间
某中断的响应时序如图7所示:

图7若M1周期的S5P2前某中断生效,在S5P2期间其中断请求被锁存到相应的标志位中去;M2恰逢指令的最后一个机器周期,且该指令不是RETI或访问IE、IP的指令。于是,M3和M4便可以执行硬件LCALL指令,M5周期将进入了中断服务程序。
80C51的中断响应时间(从标志置1到进入相应的中断服务),至少要3个完整的机器周期。
(2)中断响应过程
①将相应的优先级状态触发器置1(以阻断后来的同级或低级的中断请求)。
②执行一条硬件LCALL指令,即把程序计数器PC的内容压入堆栈保存,再将相应的中断服务程序的入口地址送入PC。
③执行中断服务程序。
中断响应过程的前两步是由中断系统内部自动完成的,而中断服务程序则要由用户编写程序来完成。
(3)中断返回
RETI指令的具体功能是:
①将中断响应时压入堆栈保存的断点地址从栈顶弹出送回PC,CPU从原来中断的地方继续执行程序;
②将相应中断优先级状态触发器清0,通知中断系统,中断服务程序已执行完毕。
注意:不能用RET指令代替RETI指令。在中断服务程序中PUSH指令与POP指令必须成对使用,否则不能正确返回断点。三、习题
(一)单选题
1.80C51单片机有(    )个中断源。
A.3             B.4           C.5           D.6
答案:C
2.80C51的中断响应时间至少要(    )个完整的机器周期。
A.3             B.4           C.5           D.6
答案:A
3.中断服务程序的最后一条指令必须是(    )。
A.返回指令RET                  B.中断返回指令RETI        
C.硬件LCALL指令                D.长转移指令LJMP
答案:B
4 .80C51单片机CPU响应中断的条件不包括(    )。
A.中断源有中断请求             B.此中断源的中断允许位为1
C.CPU开中断                    D.EA=0
答案:D(二)简答题
1. CPU响应中断的条件有哪些?
答:中断源有中断请求;
此中断源的中断允许位为1;
CPU开中断(即EA=1)。 2. 简述CPU响应中断的过程。
答:①将相应的优先级状态触发器置1;
②执行一条硬件LCALL指令;
③执行中断服务程序。转载注明  无忧答案网  QQ 761296021

QQ|手机版|小黑屋|网站地图|无忧答案网 ( 冀ICP备18010495号-1 )

GMT+8, 2024-5-4 02:37

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表