MSP432产品培训(二):中断管理

+荐课 提问/讨论 评论 收藏
  • 本课程为精品课,您可以登录eeworld继续观看:
  • MSP432产品培训(二):中断管理
  • 登录
接下来我们看一下Cortex-M 这个内核当中一个独有的可嵌套的一个中断向量管理器NVIC一些具体情况 那所有的以Cortex-M内核2架构为内核的微控制器 它所有的中断处理都要通过这个NVIC来进行 那NVIC将整个系统当中的所有的事件分为异常和中断两种 那我们的432产品 它支持7个异常和71个中断 那所有的中断它分成了8个可编程的优先级组 它是一个组 然后在组里面还可以区分优先级 那我们在进入中断和退出中断的时候呢 我们硬件是自动对环境进行保持和恢复的 我们会保存一些内核寄存器一些链接寄存器状态 以及PC指针 这些信息都会由硬件来自动进行出站入站管理 并且产生中断的时候 硬件也是自动载入一个向量表的中断服务程序地址 那我们这个中断管理也是支持一个可嵌套可占据的 这样的一个中断性能 另外我们非常有特色的一点呢我们称之为尾链技术 那尾链技术什么意思呢 就是我们进出中断的时间 它是拥有一个可确定性 就是我们产生了中断 我们需要进行环境的保存 然后是中断服务程序的掉路 那所有这些过程在我们Cortex-M的架构下 永远是12个周期进入中断 退出中断也是12个周期 这是没有产生尾链的情况 如果产生尾链 所谓的尾链就是我们在处理一个中断的时候呢 这个中断被打断了对另外一个中断抢占了 那么我们需要从这个中断来切换到另外一个中断的服务程序的时候 同样要进行当前的环境的保存和恢复 那这个被抢断的情况下 我们进出中断的时间是6个周期 这都是一个非常短的时间并且它是一个可确定性的时间 那它对于一些实时性要求比较高的应用来说是一个非常有意义的特色 那我们这里具体看一下尾链 假设我们系统当中有两个中断 一个IRQ1 一个是IRQ2 然后这两个中断它同时发生了 那由于IRQ1的它的优先级 高于IRQ2 那我们系统就将先执行IRQ1的中断服务程序 接着执行IRQ2的中断服务程序 那我们看到这个列表 第一行是我们传统的处理器 它将进行的一个出入站管理 首先是push 我们把需要保存的寄存器信息 PCB信息把它压榨 进行push 然后执行IRQ1的中断程序 等执行完了之后 我们把入站的东西pop出来 接着我们去执行第二个中断之前我们同样进行这个push操作 实际上我们等于把刚刚pop出来的寄存器或输出来数据 我重新把它压榨 然后执行ISR2中断2的服务程序 最后等完毕之后 我们再把压榨的内容pop出来 这是传统的控制器它会进行的中断处理 那来看一下我们新的有尾链技术的Cortex-M4内核它是怎么处理 首先当然要push把要保存的环境变量来把它入站 这个push 我们刚才说了是一个固定周期的 它是12个cycles 固定周期的一个入站过程 入站之后我们就执行ISR1等ISR1执行完毕之后呢 它不会pop 因为我们pop之后我们要执行ISR2 那我们出站的这些东西我们又要把它重新入站 这段时间其实是可以节省的 如果不节省就等于又需要12个cycles 把数据pop出来 再需要12个cycles把这个数据push进去 那在尾链技术下 我们只需要6个cycles就可以从ISR1切换到ISR2来进行执行 一直到ISR这些完毕 我们再通过12个cycles把入站信息给pop出来 恢复 所以首先它的入站和出站的时间是固定的 其次它是非常节省的它一共节省了18个周期 就是原先需要24个周期来进行push和pop现在只要6个周期来进行尾链处理 我们节省了18个周期 这也是非常可观的一个实时性的性能 好 现在我们来看一下在用MSP432进行开发的时候 我们怎么样来进行这个中断向量表的处理 我们这两种方法都是可以的 一种就是我们声明整个中断向量表 这是我们比较通用的原先430产品通用的这种方法 我们在向量表当中会定义每个中断服务程序的入口地址 这些代码类似一个标准的函数它会位于用户应用程序当中 这是我们惯有的一个MSP系列产品的中断向量表的声明方法 那现在由于我们是用ARM内核 我们也可以用一种新的方法来进行中断向量表的定义 我们可以使用关键字vector这个关键字来进行中断向量表的定义 我们可以同时把中断向量和它的处理函数一起进行定义 就按照这个图上的地址示例就可以了 那可以看到 我们其实减少很多的代码处理的过程 好 第二部分关于我们Cortex-M内核这样一个简单的介绍就到此结束 谢谢大家的观看
课程介绍 共计13课时,2小时30分32秒

MSP432产品培训

MSP430 TI MCU Cortex-M4F 微控制器 MSP432

     MSP432是TI的MSP430家族新增加的32位产品系列,采用ARM-CortexM4F内核,专注于低功耗和通用微控制器领域。在低功耗和高性能以及增强型外设方面均有突出表现。本次MSP432培训共分12个章节,详细介绍了产品的内核,架构和各种增强型外设,配合小练习,帮助用户迅速了解MSP432产品的性能,快速掌握MSP432产品的使用。

推荐帖子

【我与WEBENCH】基于TMS320VC33DSP控制板卡的电源方案对比(实物对比测试)
本帖最后由 fengye5340 于 2014-1-6 13:41 编辑 一、【原始方案介绍】       该DSP控制板卡采用多层板设计,已经用于项目中,工作比较稳定。首先说一下DSP器件TMS320VC33。它是美国TI公司推出的TMS320C3X系列新一代浮点式数字信号处理器。它以高速、低功耗、低成本、易于开发为显著特点。是通信、手机、MODEM、...
fengye5340 模拟与混合信号
如何着手电源设计
本帖最后由 qwqwqw2088 于 2019-6-24 14:40 编辑 从不同方面深入介绍降压、升压和降压-升压拓扑结构。 降压转换器 图1是非同步降压转换器的原理图。降压转换器将其输入电压降低为较低的输出电压。当开关Q1导通时,能量转移到输出端。   图1:非同步降压转换器原理图   公式1计算占空比:  ...
qwqwqw2088 模拟与混合信号
dsp与pcb
作为制版,这个是小不了,玩dsp肯定要和protel打交道,eda的软件可定要熟悉!先把这个话题开着,接着慢慢的丰富内容哈!...
gaoxiao 微控制器 MCU
新手报道
我是一名MSP430学习的新手,感觉这东西好复杂,看了好多天的视频和书之后,也算有一点点的收获,可是现在遇到一个比较棘手的问题,程序的编写发现自己无法下手,大神求教...
七弟 微控制器 MCU

zhangleiat185

讲解细致,非常适合学习,赞!

2020年10月29日 13:36:50

SensorYoung

讲解很详细,需认真学习

2020年10月19日 20:56:19

GuyGraphics

讲解很详细,需认真学习

2020年10月19日 20:54:19

YangTwo

讲解很详细,需认真学习

2020年10月19日 20:54:02

06010601

讲解很详细,需认真学习

2020年10月04日 13:08:40

luck_gfb

讲解很详细,需认真学习

2020年09月19日 16:25:59

小颖颖子

讲解的很细致,很容易就可以明白,

2020年07月30日 14:38:58

jpf

内存中手动写入一段已经保存好的信号内容,保存下的格式为文本txt如何方便的将txt里的内容写如指定的内存空间说一下处理的步骤...

2020年07月28日 13:18:34

大明58

MSP432是TI的MSP430家族新增加的32位产品系列,采用ARM-CortexM4F内核,专注于低功耗和通用微控制器领域。

2020年05月12日 11:12:24

hawkier

学习了,不错的讲解

2020年02月13日 13:58:24

分享到X
微博
QQ
QQ空间
微信

EEWorld订阅号

EEWorld服务号

汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新文章 手机版

站点相关: EEWORLD首页 EE大学堂 论坛 下载中心 Datasheet 活动专区 博客

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2023 EEWORLD.com.cn, Inc. All rights reserved