首页 > 其他分享 >中断系统概念、组成、使用,(有错误欢迎指正)

中断系统概念、组成、使用,(有错误欢迎指正)

时间:2024-10-20 18:46:37浏览次数:3  
标签:标志 优先级 中断 欢迎 CPU 指正 低优先级 中断请求

基本概念

        中断:在执行程序过程中,外部设备向CPU发出中断请求信号,要求暂时中断当前程序的执行转而执行相应的处理程序,待处理程序执行完,再继续执行原来被中断的程序

        中断源:一些特定的时间,也称中断信号

        中断请求:中断源要求服务所提出的请求

        断点:主程序被打断的地方

        中断服务程序:处理特定事件的一段程序

        中断响应:CPU转去执行中断服务程序的过程

单片机的中断系统结构

        

中断源INT0(上划线)T0INT0(上划线)T1RX/TX
中断标志(TCON,SCON)IT0 TE0TF0IT1 IE1TF1RI/TI
中断允许(IE)EX0ET0EX1ET1ES
EA
优先级(IP)PX0PT0PX1PT1PS

1、中断源

INT0非外部中断0P3.2引脚输入,TT0决定是低电平(0)有效或下降沿(1)有效
INT1非外部中断1P3.3引脚输入,TT1决定是低电平(0)有效或下降沿(1)有效
TF0T0溢出中断当T0产生溢出时,T0溢出中断标志位TF0置位(由硬件自动执行),请求中断处理
TF1T1溢出中断请当T1产生溢出时,T1溢出中断标志位TF1置位(由硬件自动执行),请求中断处理
RI或TI串行口中断请求当接收或发送完一个串行帧时,内部串行口中断请求标志位RI或TI置位(由硬件自动执行),请求中断

2、中断标志(TCON,SCON)

TF1T1溢出中断标志
TF0T0溢出中断标志
IE1INT1中断标志
IT1INT1中断触发方式控制位
IE0INT0中断标志位
IT0INT0中断触发方式控制位
T1串行发送中断标志
RI串行接收中断标志

3、中断允许(IE)

IE寄存器格式

D7D6D5D4D3D2D1D0
EAXXESET1EX1ET0EX0

                等于1为允许,等于0为禁止

4、中断优先级(IP)

IP寄存器格式

D7D6D5D4D3D2D1D0
XXXPSPT1PX1PT0PX0

优先级控制位说明

中断优先级控制位说明
PS串行口中断优先控制位1为高优先级0为低优先级
PT1定时器T1中断优先控制位1为高优先级0为低优先级
PX1外部中断1中断优先控制位1为高优先级0为低优先级
PT0T0中断优先控制位1为高优先级0为低优先级
PX0外部中断0中断优先控制位1为高优先级0为低优先级

若两个高优先级或低优先级冲突,或者未设置优先级,则按照自然优先级的顺序执行

中断处理过程

1、中断响应条件

CPU响应中断的条件是:①有中断源发出中断请求;②中断总允许位EA置1:③申请中断的中断源允许位置1
CPU响应中断的阻断情况有:①CPU正在响应同级或更高优先级的中断;②当前指令未执行完;③正在执行中断返回或访问寄存器IE和IP

2、中断响应过程

中断响应过程就是自动调用并执行中断函数的过程

C51编译器支持在C源程序中直接以函数形式编写中断服务程序。断响应微视中断函数的定义形式
如下:

void   函数名()   interrupt   n

其中n为中断类型号

设置方式:1、设置TMOD寄存器

                   2、计算并载入初值

                   3、设置IE寄存,中断允许

                   4、启动/停止

                   5、自动调用中断服务程序

例题:定时器T0工作在方式1,实现控制8个LED灯每隔50ms闪烁一次,假设晶振频率为2MHz

#include<reg51.h>

void time50ms() interrupt 1 //定时器T0
{
    TH0=(65536-50000)/256;
    TL0=(65536-50000)%256;//不能自动重载初值,需手动设置
    P2 = ~P2;
}

void main()
{
    TMOD=0x01;设置工作方式
    TH0=(65536-50000)/256;
    TL0=(65536-50000)%256;//设置初值
    P2 = 0x00;
    EA = 1;//中断允许
    ET0 = 1;//中断允许
    TR0 = 1;//启动定时器0
    while(1);
}

撤除中断请求标志(TCON):

在CPU接收中断请求后,上述位要恢复为0,即中断请求撤除,以免重复中断操作

定时器T0 T1中断标志硬件自动清除
外部中断0 外部中断1下降沿触发中断标志硬件自动清除
低电平触发硬件电路和软件编程
串行口中断软件编程清除标志TI RI

标签:标志,优先级,中断,欢迎,CPU,指正,低优先级,中断请求
From: https://blog.csdn.net/2201_75867091/article/details/143063362

相关文章

  • USB协议详解第16讲(USB传输-中断传输及事务组成)
    1.前言中断传输用于那些频率不高,但是对周期有一定要求的数据传输。具有保证的带宽,并能在下一个周期对先前错误的传输进行重传。中断端点在端点描述符中要报告主机对此端点的查询时间,主机会保证在小于这个时间间隔的范围内安排一次传输,比如HOST主机1ms内向鼠标设备请求一次数据。......
  • C语言小白 记录自己对一些概念的理解 若有错误 多包涵 若能指正 万分感激
    当你想将输入和判断输入一起做时可以用while((数组名[i]=getchar())!='\n')记得拿括号括起来辅助在写!=CG平台使用输入重定向输入测试数据,需要使用(ch=getchar())!=EOF判断字符串输入结束,如果使用(ch=getchar())!='\n'上传到CG平台后可能会超时。写oj的时候如......
  • (系列八).net8 webApi后端框架轮子,欢迎下载。
    说明  该文章是属于OverallAuth2.0系列文章,每周更新一篇该系列文章(从0到1完成系统开发)。   该系统文章,我会尽量说的非常详细,做到不管新手、老手都能看懂。   说明:OverallAuth2.0是一个简单、易懂、功能强大的权限+可视化流程管理系统。友情提醒:本篇文章是属于系......
  • C语言小白 记录自己对一些概念的理解 若有错误 多包涵 若能指正 万分感激
    指向第一个元素或整个数组用p1=test;直接数组名不用加*而指向第二个或以后的元素则要加*例如p2=&test[1]在C语言中,两个指向同一个数组中相邻元素的指针,计算他们的差值,得到的是它们之间元素的个数,是一个整数比如p1-p0等于1表明第一个到第二个相差一而不是字节数。若想求......
  • 为了避免下一次重大中断,我们需要持续测试
    自去年7月CrowdStrike/Microsoft大规模中断以来的几个月里,我们了解到了很多问题所在。一家大型网络安全提供商为其广泛部署的企业端点保护产品推出了一个有缺陷的更新。尽管(错误地)批准发布,但该更新导致全球的Windows系统崩溃,并阻止它们从重启中自然恢复。短短几分钟内,全......
  • js 中断循环的几种方式
    在JavaScript中,`forEach`方法是用来遍历数组的元素,并且它不能被中断或退出。如果你需要在满足某个条件时中断循环,你可以考虑使用其他循环结构,比如`for`循环、`for...of`循环或者`while`循环。下面是一些替代方案:1.**使用`for`循环**:```javascriptletarray=......
  • Tailwind CSS:最受欢迎的实用类CSS框架!Github Star达到了惊人的82.5K!
    在前端开发的世界中,随着项目的复杂性增加,如何高效管理样式,快速开发出响应式、美观的界面成为每个开发者关心的问题。TailwindCSS作为一个革命性的实用类(utility-first)CSS框架,以其灵活的样式管理方式赢得了广大开发者的青睐,目前是GitHub上Star数最多的CSS类框架,充分说明了......
  • 中断的学习笔记
    一、中断优先级1、中断优先级分组2、中断排队3、中断嵌套二、NVIC模块(嵌套向量中断控制器)1、机制2、中断向量三、相关函数接口1)串口接收中断函数......
  • GIC V3中断
    GIC(GenericInterruptController)是ARM公司提供的一个通用的中断控制器,其architecturespecification目前有四个版本,V1~V4(V2最多支持8个ARMcore,V3/V4支持更多的ARMcore,主要用于ARM64服务器系统结构)。目前在ARM官方网站只能下载到Version2的GICarchitecturespecification,因此,......
  • 欢迎来到密码学的奇妙世界!(`^`=◕ᴥ◕=`^`)
    欢迎来到密码学的奇妙世界!(^=◕ᴥ◕=^)大家好!今天我们将一起探索一个神秘而迷人的领域——密码学!在这个信息爆炸的时代,保护我们的个人信息安全显得尤为重要,而密码学正是为此而生的科学。(★≧▽^))★☆什么是密码学?密码学,简单来说,就是研究如何保护信息的学问。它涵盖了从数据加......