C51 - 中断系统

news2025/1/16 19:58:39

Contents

  • 1> 定义
  • 2> 作用
  • 3> 组成
    • 3.1> 中断系统结构
    • 3.2> 8个中断源
    • 3.3> 中断向量
    • 3.4> 中断优先级
  • 4> 原理
  • 5> 应用

1> 定义

1

中断(interrupt)是指:
CPU执行某一程序过程中,由于系统内,或外部某种原因,
必须中止原程序的执行,
转去执行相应的处理程序,
处理结束后,再回来继续执行原程序的【过程】


2> 作用

解决CPU与外设之间速度匹配问题,使计算机可以及时处理系统中许多随机的参数和信息;

3> 组成


3.1> 中断系统结构

3


3.2> 8个中断源

1

4种中断控制:硬件实现,软件设置;
1》中断触发方式;
2》中断允许控制;
3》中断请求标志;
4》中断优先级控制;


3.3> 中断向量

中断向量(Interrupt Vector):是程序存储器的一个地址,表明一个中断服务程序从这里开始存放。
中断发生后要通过它引导CUP转【向】相应的中断服务
正因为具有【指定性】,所以称其为中断向量。

3.3


3.4> 中断优先级

中断原则:
只有【高】优先级中断 打断【低】优先级;

硬件设计,同级中断优先级:
0> 外部中断 0;
1> 定时器0中断;
2> 外部中断1;
3> 定时器1中断;
4> 串口中断;
5> 定时器2中断;
6> 外部中断2;
7> 外部中断3;


4> 原理

4

CPU中断响应过程,以外部中断0(INT0#)为例:

Step 1> CPU每个机器周期对芯片引脚P3.2(INT0)采样;
Step 2> CPU根据采样结果设置中断标志位(IE0);
Step 3> CPU中断查询,CPU逐个检测中断标志位;
Step 4> 中断响应,程序计数器PC的值压栈;
Step 5> 外部中断入口地址(0003H)装入程序计数器PC,执行中断服务服务程序,此时中断标志位硬件清0;
Step 6> 中断返回,将PC值从栈中取出,执行主程序;

  • 内部中断不需要 Step 1> 对引脚采用;

5> 应用

硬件平台:普中-A7开发板, STC89C516R
功能实现:
主程序中,数码管循环显示0~F;
用外部中断0,实现按键按下的下降沿,LED1状态翻转;

在这里插入代码片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/18899.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【操作文件的系统调用】

目录文件操作系统调用的基本库函数打开文件读取文件写入文件关闭文件应用文件操作代码举例文件操作与进程复制的结合先打开文件再复制进程先进程复制,再进行打开文件缓冲区的知识回顾在上一篇讲述僵尸进程的文章中对文件的系统调用做了一点点的代码讲述,…

day08 微服务保护

1、JMeter压力测试 1.1、安装启动 JMeter 依赖于JDK,所以必须确保当前计算机上已经安装了 JDK,并且配置了环境变量。 Apache Jmeter官网下载,地址:http://jmeter.apache.org/download_jmeter.cgi 解压缩即可使用,目…

【Acwing—单源最短路:建图】

y总说,图论题的难点不在于打板子,而是建图的过程 个人觉得,建图的过程分成以下阶段: 1.确定结点的意义 2.确定边权的意义 结点一般都很显然,但是边权的意义我们一般把它设成对答案(或需要维护的东西&am…

C++入门知识(二)

最近太忙了,发论文写开题,有两周时间没有学习C了,因为都是抽时间来学习,所以本篇博客也是零零散散的,接下来尽量抽时间吧 目录 六、引用 6.1 引用概念 6.2 引用特性 6.3 常引用 6.4 使用场景 6.5 传值、传引用…

并发编程(一)可见性

【并发编程三大特性】: 可见性 有序性 原子性( 较复杂 ) 【线程的可见性】: 【一个例子认识线程的可见性】: import Utils.SleepHelper; import java.io.IOException;public class T01_HelloVolatile {private sta…

Go中的泛型和反射以及序列化

嗨喽,小伙伴们,好几没有更新了,最近在搞一些云原生的东西,docker , k8s 搞得我暂时迷失了方向,不过我举得搞IT吗,就是在不断尝试,搞一下当下最新的技术,不然 … GO中的泛型与继承 搞过java的都知道泛型与继承,在go中也开始搞泛型与继承了(在go1.8之后) 先看代码–>> p…

【记录】PyCharm 安装 preprocess 模块(库)|| 在 PyCharm 中安装 preprocess 失败,故而在 终端 安装

preprocess.py 针对的是处理许多 文件类型。它工作的语言包括:C、Python、 perl、tcl、xml、javascript、css、idl、tex、fortran、php、java、shell 脚本(bash、csh等)和c。预处理可以作为 命令行应用程序和作为python 模块。 目录一、在 Py…

矩阵论复习提纲

矩阵论复习提纲 第一章 矩阵相似变化 1、特征值与特征向量 A ∈ Cnxn 若存在 λ ∈ C 满足 Ax λx 则 λ 为 A 的特征值 可转换为 (λI - A)x 0 特征多项式 :det(λI - A) 特征矩阵: λI - A 2、相似对角化 1. 判断可对角化…

VMware Fusion 13 正式版终于来了

千呼万唤,经历两年之久,VMware终于在Fusion 13正式版中支持了Apple Silicon 版Mac,此次发布的Fusion是Universal版本,也就是一个安装包同时适配Intel Mac及Apple Silicon (M1,M2)Mac。想起我两年…

疑难杂症集合(备忘)

sshd:no hostkeys available 解决过程: #ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key #ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key #/usr/sbin/sshd 如果上述两个文件存在,仍然出现这个错误,那么试试 chmod 600 上述两个文件。之…

01-Python的基本概念

01-Python的基本概念 Python是一种直译式(Interpreted)、面向对象(Object Oriented)的程序语言’它拥有完整的函数库’可以协助轻松地完成许多常见的工作。 所谓的直译式语言是指’直译器(InteIpretor)会将…

诊断故障码(Diagnostic Trouble Code-DTC)

诊断协议那些事儿 诊断协议那些事儿专栏系列文章,本文将由浅入深的介绍DTC(Diagnostic Trouble Code)。 关联文章: $19服务:DTCStatusMask和statusofDTC bit 定义 19服务List 文章目录诊断协议那些事儿DTC(Diagnos…

Python pyenv install 下载安装慢(失败)完美解决

pyenv 下载原理就是将例如 Python-3.10.3.tar.xz 这样的压缩文件下载到本地缓存文件或临时文件,然后解压出来使用。 由于下载速度或者网不行,那么就跳过 pyenv 下载,自己下载,然后放到它的缓存文件,这样不就行了。 1…

3.np.random

1. np.random.seed np.random.seed()函数用于生成指定随机数。 seed()被设置了之后,np.random.random()可以按顺序产生一组固定的数组,如果使用相同的seed()值,则每次生成的随机数都相同。 如果不设置这个值,那么每次生成的随机数…

[附源码]计算机毕业设计JAVA基于Java的护肤品网站

[附源码]计算机毕业设计JAVA基于Java的护肤品网站 项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM my…

【MySQL进阶】表的增删改查操作(CRUD)+(SQL执行顺序)

1. 新增(复制数据)2. 查询 - 进阶2.1 聚合查询2.2 group by2.3 having2.4 联合查询2.4.1 内连接2.4.2 外连接2.4.3 自连接2.4.4 子查询2.4.5 合并查询3 SQL的执行顺序(where...)1. 新增(复制数据) 语法 -- 字段名 列名 -- 将表2的数据复制到表1中 -- 两张表的结构要一样 i…

前端知识点

1.HTML 2.CSS 3.js 4.VUE 5.vUE的基本指令 6.VUE案例 7.ELEMENT HTML 设置图片 <img src"图片地址">让图片居中显示<center><img src"图片地址" width"270" height"900"></center>有序列表 <!--有序 ty…

Spring框架技术的核心与设计思想

目录 1. Spring 是什么? 1.1 什么是容器? 1.2 什么是 IoC ? 2. 传统式开发 3. 控制(权)反转式开发 4. 理解Spring 核心 - IoC 1. Spring 是什么? Spring 的全称是 Spring Framework, 它是一种开源框架, 2002 年, Rod Jahnson 首次推出了 Spring 框雏形 interface21…

[UE笔记]客户端服务器时间同步

内容系看教程所做的笔记 时间 往返时间&#xff08;RTT, Round-Trip Time&#xff09;&#xff1a;数据从客户端通过网络发送到服务器&#xff0c;再从服务器返回到客户端所需的时间。 首先客户端应当知道服务端的当前时间。 服务器启动时间总是先于客户端的&#xff0c;客户…

【学习OpenCV4】OpenCV入门精讲(C++/Python双语教学)

大家好&#xff0c;我在CSDN开的OpenCV课程已经开课了&#xff0c;入口如下&#xff1a; OpenCV入门精讲&#xff08;C/Python双语教学&#xff09; 课程开始快一周了&#xff0c;收到了广大同学们的欢迎。 &#xff08;1&#xff09;评分很高&#xff1b; &#xff08;2&#…