您现在的位置是:首页 > 数字电源 > 技术解析

MSP430有哪些可屏蔽中断

时间:2018-07-06 来源: 关键字:   

MSP430有哪些可屏蔽中断

本文引用地址: http://power.21ic.com//digi/technical/201807/74446.html

中断很大程度上体现了一款单片机的性能,从这一点将MSP430在中断方面做得很不错,主要是提供了非常丰富的中断源,基本的有IO中断,定时器中断和一些接口中断(SPI,UART,I2C)等等。

现在我就谈谈关于MSP430中断的一些特性,主要是在项目经历中感觉比较有用的问题,跟大家分享下。

第一,MSP430中断的优先级。

MSP430支持中断优先级,但是优先级的高低怎么获知呢?它的用手手册上有个很有意思的说法,我原文引用过来“The nearer a module is to the CPU/NMIRS, the higher the priority”,翻译过来就是说离CPU/NMIRS越近,优先级就越高。那我们怎么知道那个模块离CPU近啊,看datasheet给的框图?总觉得这不可能让一个做电子的人放心,比如框图在中距CPU一样进,那怎么区分呢?所以我们有另外一个更可靠的办法,IAR为每一款型号的430都提供了对应的头问题,只靠看中断向量地址就可以知道了。430的中断向量表从地址值0xFFC0开始至0XFFFF结束,一共有32个表项(每个中断向量对应2byte),0XFFCO对应的中断向量的优先级是最顶的,0XFFFE对应的中断向量的优先级是最高的,也就是从0xFFCO开始至0xFFFF,32个中断优先级由低至高。这样就很容易弄清楚各中断的优先级了。

第二,MSP430中断的响应过程。

首先,当然是中断发生对应的标志为置1。这个时候的过程我详述下,其实是翻译的用户手册但是还是了解下好。

1. CPU会执行完当期的指令。

2. 指向下一条指令的PC被压栈。

3. 状态寄存器SR压栈。

4. 选择最好优先级的中断进行服务。

5. 单源中断的中断标志位会被自动清零,这个地方需要小心下P1,P2这样的中断标志位不会自动清零,因为P1、P2的IO中断属于多源中断,就是说P1或者P2的8个IO对应到了一个中断向量上,单片机知道是P1或者P2发生了中断,无论是P1的哪一个IO发生的都会指向P1的中断向量,P2也是一样的,所以需要在代码中手动清零。

6. 状态寄存器SR被清零,将会终止任何低功耗状态,并且全局中断使能被关闭(GIE)。这个地方与51很是有些不同,430响应了中断后会关闭全局中断使能,不会响应任何其他的中断包括优先级高的,就是说默认状态下是没有中断嵌套的,若用到中断嵌套的话需要使用_EINT()打开全局中断。

7. 中断向量被装载到PC,开始执行中断服务函数。

以上是整个中断的接收过程,比较重要的地方我用彩色字体标出了。

中断返回就相对简单些,中断服务函数会由RETI这条指令返回,SR被弹出,单片机恢复到中断前的状态,PC也被弹出,继续执行指令。

第三,开中断和中断服务函数。

这个是让我在项目中纠结过的地方,也请各位小心。

MSP430一旦开了外设的中断,比如SPI的接收中断。

在SPI的接收中断被使能,单片机一旦发现SPI接收标志置位,就会装载中断向量,但是我们如果没有用到SPI的接收中断,会怎样呢?由于没用到,所有就没有写SPI接收中断的服务函数,此时中断向量里指向中断服务函数地址值是啥?是全0。CPU从0-01FFh取指令,只会发生一件事。PUC,上电清零。接着PC会装载0xFFFE中断向量的内容,也就是复位向量,程序会跳转到给IAR我们做的启动代码。程序再往下执行会执行到我们编写的代码的main()的第一句。这样悲剧就诞生了,荡机了!!!!

换一批

延伸阅读

[资讯] 苹果自动驾驶,减速还是陨落?

苹果自动驾驶,减速还是陨落?

经过一番统计,我们发现库克过去一年中在所有场合提到苹果自动驾驶业务的次数,只有三次。所以,这次“泰坦”大裁员也不那么意外了。 ......

关键字:库克 苹果 自动驾驶

[资讯] Android Q或将加入面部识别解锁:类似苹果Face ID

Android Q或将加入面部识别解锁:类似苹果Face ID

据美国科技媒体9to5Google报道,谷歌或将在Android Q操作系统中加入类似苹果Face ID的面部识别解锁功能。 ......

关键字:面部识别 苹果 Face ID

[资讯] 宁夏将用AI助推教师队伍建设

宁夏将用AI助推教师队伍建设

为助力宁夏“互联网+教育”发展,教育部近日批复了《人工智能助推教师队伍建设行动宁夏试点工作方案》(以下简称《方案》)。 ......

关键字:互联网 人工智能 AI

[资讯] Rokid 发布AI操作系统YodaOS 宣布代码开源

Rokid 发布AI操作系统YodaOS 宣布代码开源

近日,人工智能公司Rokid发布AI操作系统YodaOS,并宣布代码开源。 ......

关键字:人工智能 AI 云端语言

[资讯] Amper Music推出面向企业内容创作者的人工智能作曲平台

Amper Music推出面向企业内容创作者的人工智能作曲平台

近日,人工智能音乐创作领域的企业 Amper Music 宣布推出 Amper Score,这是供企业内容创作者使用的端到端人工智能作曲平台,同时还可以充当开发人员的 API(应用程序编程接口) ......

关键字:人工智能 AI 音乐

[真心话] 资深硬件研发工程师:抄袭可耻!但产品抄袭可用,资料抄袭可笑

资深硬件研发工程师:抄袭可耻!但产品抄袭可用,资料抄袭可笑

硬件研发一般是指电子产品硬件研发,是一种看得见实物的电子产品研发,比如我们所说的手机、鼠标、键盘、音响都是硬件,硬件开发也就是在这些方面进行的一系列研究。本文分享一位资深工程师对硬件研发的一些看法,希望能对大家有所帮助。......

关键字:硬件研发 抄袭 生产体系

[新鲜事] 太淘气了!俄罗斯机器人两次私自逃离实验室将被拆解

太淘气了!俄罗斯机器人两次私自逃离实验室将被拆解

在威尔史密斯的电影《机械公敌》中,一个人工智能机器人因为有了自己的思想,在人类社会中造成了极大的混乱,如今机器人拥有智能这一现象在俄罗斯真实上演了,这个机器人两度私自逃出了实验室,第一次因为电量耗完被搁置在马路中间,第二次逃走未遂,实验室准......

关键字:俄罗斯 机器人 人工智能

相关文章

    无相关信息
发表评论 共有条评论
用户名: 验证码:

变频器内部主电路有什么神奇?

变频器内部主电路有什么神奇?

采用“交-直-交”结构的低压变频器,其内部主电路由整流和逆变两大部分组成.……

精确稳定 让平均电流法帮你实现模块电源并联

精确稳定 让平均电流法帮你实现模块电源并联

今天要为大家介绍的是平均电流法,这种方法能够精确稳定的帮助工程师实现电源模块的并……

九款最简单的电子镇流器电路图原理图分析

九款最简单的电子镇流器电路图原理图分析

从工作原理而言,电子镇流器是一个电源变换电路,它将交流输入市电电源的波形、频率和……

项目外包