0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STC8A8K64S4A12系列单片机中断原理详解

CHANBAEK 来源:百家号电子友人号 作者:百家号电子友人号 2023-11-15 17:10 次阅读

前言

今天来说说单片机中断原理,概念搞清楚很重要!

一、关于中断的一些概念

  1. 中断的概念:当CPU正在处理某件事的时候外界发生了紧急事件请求,要求CPU暂停当前的工作,转而去处理这个紧急事件,处理完以后,再回到原来被中断的地方,继续原来的工作,这样的过程称之为中断。
  2. 中断系统:实现中断功能的部件称为中断系统,中断系统是为CPU具有对外界紧急事件的实时处理能力而设置的。
  3. 中断请求源:请示CPU中断的请求源即为中断请求源,简称中断源。
  4. 中断优先级:中断系统一般允许多个中断源,当几个中断源同时向CPU请求中断,那就诞生一个优先处理哪个中断源的问题,这样中断优先级便产生了。
  5. 中断嵌套:CPU按照中断源的中断优先级处理一个低优先级中断的时候,假如有另外一个更高优先级的中断源发出中断请求,那CPU需要暂停原来中断源的服务程序,转而去处理更高优先级的中断源,待处理结束后,再回到原低优先级的中断服务程序,这个过程就是中断嵌套。

二、STC8A8K64S4A12系列的中断请求源

■ STC8A8K64S4A12系列单片机有22个中断请求源。具体如下:

  • 5个外部中断:外部中断0/INT0、外部中断1/INT1、外部中断2/INT2、外部中断3/INT3、外部中断4/INT4 。
  • 5个定时器中断:定时器0中断、定时器1中断、定时器2中断、定时器3中断、定时器4中断 。
  • 4个串口中断:串口1中断、串口2中断、串口3中断、串口4中断 。
  • 1个A/D转换中断。
  • 1个低压检测(LVD)中断。
  • 1个CCP/PWM/PCA中断。
  • 1个SPI中断。
  • 1个比较器中断。
  • 1个PWM中断。
  • 1个PWM异常检测中断。
  • 1个I2C中断。

■ 比较常用的中断是:外部引脚中断、定时器中断、串行口(UART)中断。
■ 在讲到每一部分知识时,我们都会详细讲解相关的中断使用原理。
■ 下图是STC8A8K64S4A12系列的中断结构图,大家需要了解的是:

  • 所有中断使能的话都必须有个“总闸”控制,那就是总中断允许位EA。
  • 有多个中断一起触发时,如何仲裁以保证有序的先后执行顺序,那就存在中断优先级的问题。
  • 关于中断,有个不可回避的概念,那就是中断向量。

三、关于中断的一些概念STC8A8K64S4A12系列的中断结构图

四、STC8A8K64S4A12系列的中断优先级

STC8A8K64S4A12系列单片机自然优先级:手册里面称之为辅助优先级结构或者内部的查询次序。如下图。

C语言编程时,中断查询次序号就是中断号,例如,针对外部中断0的中断服务函数:

void INT0_Isr (void) interrupt  0
         {
               ;   //添加中断处理语句
           }	


STC8A8K64S4A12系列单片机中断优先级的设置: STC8A8K64S4A12系列单片机通过设置特殊功能寄存器(IP、IPH、IP2和IP2H)中的相应位,对有4个优先级中断的中断请求源进行编程。

仅有1个中断优先级(最低优先级0)的是:外部中断2/INT2、外部中断3/INT3、定时器2、定时器3、定时器4、串行口3、串行口4。(共7个)

STC8A8K64S4A12系列IP和IPH寄存器各位含义介绍如下:

STC8A8K64S4A12系列IP2和IP2H寄存器各位含义介绍如下:

STC8A8K64S4A12系列单片机中断嵌套: 中断优先级高的中断请求可以中断CPU正在处理的优先级低的中断服务程序,待完成了中断优先级高的中断服务程序后,再继续被打断的低优先级的中断服务程序。

下图描述了主程序和中断服务程序的示意图,也诠释了中断嵌套的含义。

中断比喻举例,以下情形:

  • 只有排长或者团长给士兵打电话;
  • 排长和团长同时给士兵打电话;
  • 士兵已在排长地里接到团长电话;
  • 士兵已在团长地里接到排长电话;
  • 士兵同时接到两个排长的电话;
  • 士兵同时接到两个团长的电话。

STC8A8K64S4A12系列单片机中断产生而且被CPU响应,主程序被中断,接下来将执行如下操作:

  • 当前正被执行的指令全部执行完毕。
  • PC值被压入栈。
  • 现场保护。
  • 阻止同级别或更低级别其他中断。
  • 将中断向量地址装载到程序计数器PC。
  • 执行响应的中断服务程序。

中断向量:当某中断被响应时,被装载到程序计数器PC的数值称为中断向量,是该中断源相对应的中断服务程序的起始地址。具体各中断源服务程序的入口地址就不一一列举了。

总结

不知道说的够不够清楚,望大家指正!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6032

    文章

    44513

    浏览量

    632696
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10824

    浏览量

    211089
  • 计数器
    +关注

    关注

    32

    文章

    2253

    浏览量

    94339
  • 中断
    +关注

    关注

    5

    文章

    895

    浏览量

    41384
  • 中断系统
    +关注

    关注

    1

    文章

    96

    浏览量

    61000
收藏 人收藏

    评论

    相关推荐

    STC8A8K64S4A12系列单片机DAC数模转换器讲解

      今天介绍下STC8A8K64S4A12系列单片机DAC数模转换原理及RC积分电路原理,掌握掌握STC8A8K64S4A12系列
    的头像 发表于 11-17 16:38 2442次阅读
    <b class='flag-5'>STC8A8K64S4A12</b><b class='flag-5'>系列</b><b class='flag-5'>单片机</b>DAC数模转换器讲解

    STC8A8K64S4A12串口通信

    宏晶 的51单片机STC8A8K64S4A12想用r422的串口通信方式,谁能发个原理图,r422芯片是TI的65HVD33。
    发表于 03-09 15:48

    STC8A8K64S4A12开发板学习资料

    `STC8A8K64S4A12系列单片机是宏晶公司(STC)2016年推出的宽电压工作范围的1T单片机,该
    发表于 01-06 10:25

    浅析STC8A8K64S4A12开发板

    版权声明:本文为博主原创文章,转载请附上原文出处链接。文章目录前言一、STC8A8K64S4A12系列单片机介绍二、STC8A8K64S4A12开发板概述三、
    发表于 07-19 09:24

    如何对基于STC8A8K64S4A12单片机的ADC进行检测

    STC8系列单片机有哪些优点?与ADC相关的寄存器有哪些?如何对基于STC8A8K64S4A12单片机的ADC进行检测?
    发表于 08-03 07:30

    基于STC8A8K64S4A12智能车设计资料分享

    智能车进阶版文章目录基于STC8A8K64S4A12智能车设计一、板载外设二、功能三、实物:四、代码五、PCB和元件六、焊接基于STC8A8K64S4A12智能车设计一、板载外设1.1 红外接收头
    发表于 02-16 06:43

    STC8A8K64S4A12的命名规则是什么

    STC8A8K64S4A12的命名规则STC8 -- STC8系列A -- 子系列中的
    发表于 02-18 07:32

    如何使用STC8A8K64S4A12单片机实现简单的LED灯闪烁

    前几日,使用STC8A8K64S4A12单片机写了一个简单的LED灯闪烁,是在库函数里直接写的,生成的HEX有100多K,下载进入板子,本来设置的1秒延时突然变的有20秒的样子,检查一天都没有结果
    发表于 02-18 07:17

    STC8A8K64S4A12单片机怎么能掉电后保存数据?

    STC8A8K64S4A12单片机怎么才能做到掉电后把数据写到EEPROM通过哪些功能实现
    发表于 10-08 08:00

    STC8A8K64S4A12迷你开发板电路原理图免费下载

    本文档的主要内容详细介绍的是STC8A8K64S4A12迷你开发板电路原理图免费下载。
    发表于 06-27 08:00 159次下载
    <b class='flag-5'>STC8A8K64S4A12</b>迷你开发板电路原理图免费下载

    使用STC8A8K64S4A12单片机掉电唤醒定时器应用的实例

    本文档的主要内容详细介绍的是使用STC8A8K64S4A12单片机掉电唤醒定时器应用的实例。
    发表于 01-28 08:00 24次下载
    使用<b class='flag-5'>STC8A8K64S4A12</b><b class='flag-5'>单片机</b>掉电唤醒定时器应用的实例

    STC8A8K64S4A12开发板】—聊聊单片机中断原理

    版权声明:本文为博主原创文章,转载请附上原文出处链接。文章目录前言一、关于中断的一些概念二、STC8A8K64S4A12系列中断请求源三、关于中断
    发表于 11-10 20:50 13次下载
    【<b class='flag-5'>STC8A8K64S4A12</b>开发板】—聊聊<b class='flag-5'>单片机</b><b class='flag-5'>中断</b>原理

    基于STC8A8K64S4A12单片机硬件IIC_光照强度检测

    基于STC8A8K64S4A12单片机硬件IIC_光照强度检测
    发表于 11-14 15:21 20次下载
    基于<b class='flag-5'>STC8A8K64S4A12</b><b class='flag-5'>单片机</b>硬件IIC_光照强度检测

    STC8A8K64S4A12的命名规则

    STC8A8K64S4A12的命名规则STC8 -- STC8系列A -- 子系列中的
    发表于 12-23 19:11 24次下载
    <b class='flag-5'>STC8A8K64S4A12</b>的命名规则

    基于STC8A8K64S4A12制作一个示波器

    摘要:此示波器的主控是STC8A8K64S4A12,是在B站老刘示波器基础上的升级版,扩展了测量负电压的功能,更新了UI设计,屏幕升级为1.3寸OLED屏。
    的头像 发表于 02-06 11:48 2605次阅读