首页 > 其他分享 >F28335的中断

F28335的中断

时间:2024-07-04 19:31:30浏览次数:3  
标签:中断 PIE 响应 F28335 寄存器 CPU 外设

F28335采用的是三级中断,分别为外设级、PIE级、CPU级。最重要的是CPU级中断,CPU只能响应从CPU中断线上过来的中断请求。

外设想要成功产生一个中断,需要先经过外设级中断允许,接着PIE中断允许,然后CPU允许,最终才会产生

如上图所示中断响应过程可以分为两个部分,下边为PIE小组响应外设中断的过程,上半部分为CPU响应12组PIE中断的过程。 

1  外设级中断

CPU正常处理程序,突然外设产生了一个中断事件,那么该外设对应的中断标志寄存器相应的位将被自动置位,如果相应的使能位正好打开,则该中断信号将会向PIE发出中断请求,如果没有使能,则该中断不会执行,想让改中断信号消失,中断标志寄存器复位即可。

2  PIE级中断

F28335内部集成了多种外设,每一个外设都会产生一个或多个外设级中断,但是CPU没有能力处理所有外设级的中断请求。于是CPU让出12个中断线给PIE模块复用管理。

一旦PIE有中断产生,相应的中断标志位PIEIFRx.将会置1,如果相应的PIE中断使能位也置1,则PIE将会检查对应的PIEACKx位以确定CPU是否准备好响应该中断,每次需要向改位写1进行清零,否则后续中断不会响应。  

PIE通过PIEACKx的位来控制每一组中只有一个中断可以被响应,一但响应后就需要清零。

 3  CPU级中断

CPU级也有中断标志寄存器IFR和中断使能寄存器IER,当某一个外设中断请求通过PIE发送到CPU时,CPU中断标志寄存器IFR中对应的中断标志位INTx就会被置位。

例如,当CPU定时器0的周期中断T0INT发送到CPU时,IFR的第0位INT1就会被置位,然后该状态就会被锁存在寄存器IFR中。这个时候CPU不会马上去执行中断,而是检查IER寄存器中相关位的使能情况和CPU寄存器ST1中的全局中断屏蔽位INTM的使能情况。如果IER中的相关位被置位,并且INTM的值为0,则中断就会被CPU响应。

在CPU定时器0的例子中,当IER的第0位INT1被置位,并且INTM的值为0,CPU就会响应定时器0的周期中断,T0INT。

CPU的中断优先级由高到低依次是INT1~INT12,每组 PIE控制的8个中断优先级由高到低INTx.1~INTx.8。


 

 

 

标签:中断,PIE,响应,F28335,寄存器,CPU,外设
From: https://blog.csdn.net/m0_73884681/article/details/140183784

相关文章

  • idm 支持断点续传吗 idm 断点续传如何使用 idm断点续传怎么解决 idm下载中断后无法继
    断点续传功能,让我再也不会惧怕下载大型文件。在断点续传的帮助下,用户可以随时暂停下载任务,并在空闲时继续之前的下载进程。下载文件不惧网络波动,断点续传让下载过程更稳定。有关idm支持断点续传吗,idm断点续传如何使用的问题,本文将进行详细介绍。一、idm支持断点续传吗最......
  • 【AKS+Redis】AKS中客户端(ioredis)遇见Azure Redis服务Failover后链接中断的可能性
    问题描述在AKS中连接Redis,当遇到AzureRedis升级或者Failover时,NodeJS应用中使用ioredissdk在很长一段时间内无法恢复和AzureRedis服务端的连接,对于这种想象的可能性推断。 问题解答使用AzureCacheforRedis时,一个服务器是主节点,另一个服务器是副本。主节点通常负......
  • 51单片机外部中断(按键识别)
    欢迎入群共同学习交流时间记录:2024/7/2一、电路原理图51单片机包含INT0、INT1两个外部中断接口二、知识点介绍1.中断寄存器位介绍(1)TCON定时控制寄存器,位0(IT0)中断INT0请求信号选择位,1表示下降沿信号、0表示低电平信号,位1(IE0)中断INT0信号标志位,1产生中断信号、0未产生......
  • CH5XX串口中断接收超时
    1.串口1初始化:/*配置串口1:先配置IO口模式,再配置串口*/GPIOA_SetBits(GPIO_Pin_9);GPIOA_ModeCfg(GPIO_Pin_8,GPIO_ModeIN_PU);//RXD-配置上拉输入GPIOA_ModeCfg(GPIO_Pin_9,GPIO_ModeOut_PP_5mA);//TXD-配置推挽输出,注意先让IO口输出高电平U......
  • KUKA机器人中断编程2—中断相关的指令
    在进行中断编程时,涉及到多个指令,包括:DECL、ON、OFF、GLOBAL、BRAKE、RESUME等。1、中断声明事件和子程序通过INTERRUPTDECL...WHEN..DO..来定义。语法:INTERRUPTDECLPrioWHEN事件DO中断程序例如:INTERRUPTDECL19WHEN$IN[1]==TRUEDOstop1()其中,中断优......
  • Linux开发讲课10--- Linux软中断
    中断是系统用来响应硬件设备请求的一种机制,它会打断进程的正常调度和执行,然后调用内核中的中断处理程序来响应设备的请求。你可能要问了,为什么要有中断呢?我可以举个生活中的例子,让你感受一下中断的魅力。比如说你订了一份外卖,但是不确定外卖什么时候送到,也没有别的方法了解外......
  • 中断的输入和悬起行为
    关于中断的输入和悬起行为,下列描述错误的是()A、当某中断的服务例程开始执行时,其悬起位会被硬件自动清除。B、如果在某个中断得到响应之前,其悬起状态被清除了,则中断取消。C、中断服务例程不可以在执行过程中把自己对应的中断重新悬起。D、当中断输入脚被assent后,该中断......
  • HC32L130 外部IO中断
    1.HC32L130外部端口PB2#include"app_SD3078.h"#defineRCC_RTC_INT_PORT SysctrlPeripheralGpio /*GPIO端口时钟*/#definePORT_RTC_INT GpioPortB /*GPIO端口*/#definePIN_RTC_INT GpioPin2 /*GPIO引脚*/voidApp_RTC_INTInit(void){stc_gpio_cfg_......
  • TMS320F28335的ADC模块
    1 ADC简介英文全称Analog-to-DigitalConverter,模数转换器2 时钟配置外围时钟HSPCLK,通过HISCP来设置SysCtrlRegs.HISCP.all=3;设置为0时,不分频其他都为sysclk/2xHSPCLK=sysclk/(3*2)=150/6=25MHz此时还需要在进行一次分频通过设置ADCTRL3的ADCCLKP......
  • STM32第五课:外部中断
    文章目录需求一、外部中断二、外部中断配置(以按键为例)1.开时钟2.配置IO3.配置检测模式和屏蔽位4.开NVIC,主函数分组三、中断函数四、需求实现总结需求1.设备上电后打开串口。2.按下KEY1,串口打印“按键1触发中断”。3.以此类推,设置4个按键。4.其中按键1,2采用寄存......