51单片机学习笔记——中断

举报
万里羊 发表于 2021/08/25 01:03:42 2021/08/25
【摘要】 51单片中断系统 1.什么是中断系统 基本解释:计算机执行某程序时,发生了紧急事件或有特殊要求,CPU暂停某程序的执行,转而处理上述事件或者请求,处理完毕后继续处理原程序的过程叫中断。为了更加方便理解...

51单片中断系统

1.什么是中断系统

基本解释:计算机执行某程序时,发生了紧急事件或有特殊要求,CPU暂停某程序的执行,转而处理上述事件或者请求,处理完毕后继续处理原程序的过程叫中断。为了更加方便理解这个概念,举例:假设你正在家里吃饭,这时接到一个电话快递员说快递到了需要到楼下取快递(中断请求)。你回答:“好的,马上下去。”(中断响应)这时你下路去取快递(这就是中断处理),取完快递后继续回到家里吃饭(中断返回)。中断分为4个步骤:中断请求->中断响应->中断处理->中断返回。

2.数据输入/输出传递方式

(1)无条件传输方式:一方对另一方来说总是准备好的。
(2)查询传输方式:查询前先查询另一方的状态,若已经准备好就传送,否则就继续查询/等待。
(3)中断传送方式:一方通过申请中断的方式与另一方进行数据传递。
(4)双方储存器存取方式:双方直接通过总线传递数据,不经过CPU中转。适用于数据量大高速通信设备,不占用CPU时间。

3.中断传送方式特点

数据传送的双方平时各自做自己的工作,一旦甲方要求与乙方进行数据传送,就主动发出信号提出申请,乙方接到申请后若同意传送,安排好当前的工作,再响应与甲方发生数据传送。完事后,回去继续做打断前的工作。中断功能强弱是计算机性能优劣的重要标志
1.提高CPU效率 2. 解决速度矛盾 3. 实现并行工作 4. 应付突发事件……

4.中断系统结构

在这里插入图片描述
在这里插入图片描述
引起CPU中断的根源,称为中断源。中断源向CPU提出的中断请求。CPU暂时中断原来的事务A,转去处理事件B。对事件B处理完毕后,再回到原来被中断的地方(即断点),称为中断返回。实现上述中断功能的部件称为中断系统(中断机构)。

5.51子系列允许5个中断源

外部中断源(2个):

INT0——由P3.2端口线引入,低电平或下降沿引起。

INT1——由P3.3端口线引入,低电平或下降沿引起。

这两个外部中断源标志和它们的触发方式控制位由特殊功能寄存器TCON的低4位控制。

内部中断源(3个):

T0——定时器/计数器0中断,由T0回零溢出引起。

T1——定时器/计数器1中断,由T1回零溢出引起。

  
 
  • 1
  • 2
  • 3

TI/RI——串行I/O中断,串行端口完成一帧字符发送/接收后引起。

这3个内部中断源的控制位分别锁存在特殊功能寄存器TCON和SCON中

  
 
  • 1

6.51单片机内部中断结构图

在这里插入图片描述

7.如何使用51单片机中断系统

(1)允许中断:
在这里插入图片描述
(2)配置中断方式:
在这里插入图片描述
(3)编写中断函数:
中断优先级处理原则:

对同时发生多个中断申请时:

☞不同优先级的中断同时申请(很难遇到)

         ——先高后低

  
 
  • 1

☞相同优先级的中断同时申请(很难遇到)

         ——按序执行

  
 
  • 1

☞正处理低优先级中断又接到高级别中断

         ——高打断低

  
 
  • 1

☞正处理高优先级中断又接到低级别中断

——高不理低

8.单片机同优先级中内部查询顺序

在同时收到几个同一优先级的中断请求时,哪一个中断请求能优先得到响应,取决于内部的查询顺序。这相当于在同一优先级内,还同时存在另一辅助优先级结构,其查询顺序如下:
在这里插入图片描述

void int1 interrupt 2//中断处理函数家关键字interrupt
{
	中断处理函数
}

  
 
  • 1
  • 2
  • 3
  • 4

9.中断响应条件

  • 此中断源的中断允许位为1

  • 总中断CPU中断打开(EA = 1)

  • 中断源有中断请求
    外部中断1初始化比例:
    Alt
    外部中断1处理函数:

void int1 interrupt 2//中断处理函数家关键字interrupt
{
 中断处理函数
}

  
 
  • 1
  • 2
  • 3
  • 4

文章来源: wlybsy.blog.csdn.net,作者:万里羊,版权归原作者所有,如需转载,请联系作者。

原文链接:wlybsy.blog.csdn.net/article/details/90576728

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。