历史上的今天

今天是:2024年10月09日(星期三)

正在发生

2018年10月09日 | 51单片机内核的中断及中断向量基础知识

发布者:数据舞者 来源: eefocus关键字:51单片机  内核  中断  中断向量 手机看文章 扫描二维码
随时随地手机看文章

51内核的最基础的中断源请求有外部中断、定时器中断和串口中断,这也是学习和开发者最长用的。当然还有其他的中断源,比如ADC、SPI、PWM等。以外部中断0为例,在编程中常使用的方式为:


void INT0()interrupt 0 using 1


{


……


}


在这里特别做上笔记:其中前面的void INT0() 只是代表一个普通没有形参的函数而已,函数名写成什么都是可以的,这个到不重要。那么后面的就一个一个词的扣把:(2-1-i-c-中国-电子网,防抓取)


其中 interrupt n 组成一组,n用来指明中断号,在函数后使用了interrupt关键字后,就会自动的生成中断向量,51内核中断号如下图,这是我今天查的正在使用的MCU:


51单片机内核的中断及中断向基础知识

例如:


12


interrupt 1 指明是定时器中断0;


interrupt 2 指明是外部中断1;


interrupt 3 指明是定时器中断1


。。。


对于51内核的MCU,不同厂家及不同型号的内部资源会有所不同,上图是我正在开发的一款中颖SH88F516单片机,由上图可见内部资源还算可以,能够满足一般的产品。后面的using n 指的是使用第n组寄存器。这个之前我在使用的过程中往往忽略了这个,也没有出现什么问题。但是今天注意到这个问题,查完资料后用上发现效果还不如不用,很有肯能是没有把这个知识用好的原因把。对比之后给我的感觉是在使用C语言写程序时,能不用就不用吧。查资料解释说假如在中断函数中使用了using n,中断不再保存R0-R7的值,这也就意味着假如一个高优先级的中断及一个低优先级的中断同时使用了using n,而这个n恰恰相等,那就等着哭把,因为这个BUG还真不是那么好找出来的(今天我就遇到了这个问题)。21ic整理


其次就是中断优先级的问题了,如图上面的中断表,在右侧第二栏标的很清楚,除了复位之外,就数外部中断0优先级最高了,依次往下排列,那么问题来了,今天刚好就碰到了需要串口0的优先级比定时器0的优先级高。没办法,只好接着啃数据手册,还好这寄存器不多,一会就查到了下表和相关的描述:



51单片机内核的中断及中断向基础知识

所以按照描述修改下优先级就可以达到目的了。


总结:用到回过头来用到51的中断,发现有些东西在之前学习的时候并没有太在意,导致现在在开发产品上使用的时候不清楚用途。因为工作跟学习性质是不一样的,作为开发者的角度来说,质量往往是第一要求。同时会接触到很多新鲜的事物和技术,但是话又说回来了,最基本的知识还是需要打牢。


关键字:51单片机  内核  中断  中断向量 引用地址:51单片机内核的中断及中断向量基础知识

上一篇:51单片机最小系统原理图、PCB及组成
下一篇:51单片机定时器使用经验总结

推荐阅读

        之前有消息称,三星可能会在今年11月份发布折叠屏手机,但现在来看这个计划要跳票了。  据外媒报道称,三星首款折叠手机将不会在今年11月份亮相,但是官方会在他们的开发者大会上公布一些跟折叠屏手机有关的消息,而这款手机真正推出的时间是2019年第一季度。  11月7日三星全球开发者大会将在旧金山拉开序幕,届时他们会公布一些新的...
晶圆代工厂台积电宣布,已于2019年9月30日在美国、德国及新加坡三地对格芯提出多项法律诉讼,控告格芯侵犯台积电40nm、28nm、22nm、14nm、以及12nm等制程之25项专利。 台积电在此诉讼之中要求法院核发禁制令,禁止格芯生产及销售侵权之半导体产品,亦对非法使用台积电半导体专利技术与销售侵权产品之格芯寻求实质性的损害赔偿。 诉讼中的25项台积电专利涉...
配置自动外部: 如果机器人程序要由上级控制器(例如)集中控制,则可以使用”自动外部”界面来执行。 上级控制器通过自动外部将用于机器人过程的信号(例如运动使能,故障确认,程序启动等)传输到机器人控制器。机械手控制器将有关操作状态和故障状态的信息传输到上级控制器。 为了启用自动外部接口的使用,必须执行以下配置: 在自动外部模式下,...
北京时间10月8日下午消息,据报道,台积电今日发布了2021年9月份和第三季度的营收数据。第三季度,作为全球最大的芯片代工厂商,台积电营收创下历史新高,表明该公司正受益于全球芯片的持续短缺。  9月份,台积电营收为1527亿元新台币,同比增长20%。整个第三季度,台积电营收为4147亿元新台币(约合148亿美元),略高于分析师平均预期的4130亿元新台币...

史海拾趣

问答坊 | AI 解惑

希望大家可以帮帮忙!!!

谁有开关电源的方案及原理图,或者逆变电源的。…

查看全部问答∨

这个网站里的高手是那么的可爱可敬

这个网站里的高手是那么的可爱可敬, 刚注册几天的菜鸟发现在这里有这么多的高手帮忙解决问题,从不嫌弃问题的弱智!   有几个人的名字我都记下来了。 不要对我这么的好哦 我怕我会迷恋哦!!! 嘻嘻嘻…

查看全部问答∨

进一步学习。。。大牛们来指教下!

学习完何老大的书,然后自己该看一点什么驱动?或写写一点什么驱动呢?…

查看全部问答∨

WinCE display driver怎样支持4bpp?

想写一个支持4bpp灰度的基于GPE的display driver要怎么做?怎么让OS知道我支持哪16种颜色? 是不是要创建一个调色板,我需要算出这16种灰度颜色对应的RGB值,然后放在调色板里么?还是只要设置成4bpp,OS就默认是灰度颜色?谢谢~~…

查看全部问答∨

关于STM32 中CAN 的过滤器设置问题

最近在捣鼓STM32的CAN 模块。虽然算是基本上能够发送接收数据了,但是总觉得对他的发送和接收比较模糊。问题就出在了对过滤器的设置  以及接收中的某些设置上,长话短说。大家看一下代码就明白我的疑问了。代码如下: void CAN_Configuration ...…

查看全部问答∨

求msp430单片机所用的软件iar430软件

本帖最后由 paulhyde 于 2014-9-15 09:26 编辑 小弟真心想学习430,苦于找不到软件,还希望哪位大哥相助一下,小弟谢过。 hao9003@163.com小弟邮箱,要是有,还望传一份给小弟。  …

查看全部问答∨

20 V, 4 A 同步稳压器 ADI的 资料

ADI的电源管理芯片相对来说是高端的,但价格比 TI的还好点。TI的也不错。 哈哈。可以一试哦。 2380是4A 20V 但要加外部MOS管 2301 是1.2 A, 20 V,这个不错。内部MOS管,适合普通应用 1.2A够了。 …

查看全部问答∨

彭启宗的《达芬奇技术》资料分享

replyreload += \',\' + 1513442;学习达芬奇系列的朋友们,我又来给大家分享资料了。。。。 前面的分享没有得到大家的权利顶起。。。。 这次,大家帮忙一定顶起来。。。。 继续分享的动力啊。。。。 Timson,如果您要查看本帖隐藏内容请回复…

查看全部问答∨

大家都来看看这个电路是恒流源电路吗?

这个电路输入电压是24~240V,文献中说的是这个电路中由Q1 R1 D2 D4 D5 D1构成了恒流源电路,请问这个VOUT不随着输入电压而变吗?这个恒流源是怎么工作的?谢谢!…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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