历史上的今天
返回首页

历史上的今天

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

正在发生

2018年10月09日 | 在设计中断时,这九个注意事项要记住!

2018-10-09 来源:eefocus

中断函数不能进行参数传递

中断函数没有返回值

在任何情况下都不能直接调用中断函数

中断函数使用浮点运算要保存浮点寄存器的状态。

如果在中断函数中调用了其它函数,则被调用函数所使用的寄存器必须与中断函数相同,被调函数最好设置为可重入的。

C51编译器对中断函数编译时会自动在程序开始和结束处加上相应的内容,具体如下:

在程序开始处对ACC、B、DPH、DPL和PSW入栈,结束时出栈。

中断函数未加using n修饰符的,开始时还要将R0~R1入栈,结束时出栈。

如中断函数加using n修饰符,则在开始将PSW入栈后还要修改PSW中的工作寄存器组选择位。

C51编译器从绝对地址8m 3处产生一个中断向量,其中m为中断号,也即interrupt后面的数字。该向量包含一个到中断函数入口地址的绝对跳转。

中断函数最好写在文件的尾部,并且禁止使用extern存储类型说明。防止其它程序调用。

在设计中断时,要注意的是哪些功能应该放在中断程序中,哪些功能应该放在主程序中。一般来说中断服务程序应该做最少量的工作,这样做有很多好处。

首先系统对中断的反应面更宽了,有些系统如果丢失中断或对中断反应太慢将产生十分严重的后果,这时有充足的时间等待中断是十分重要的。

其次它可使中断服务程序的结构简单,不容易出错。中断程序中放入的东西越多,他们之间越容易起冲突。简化中断服务程序意味着软件中将有更多的代码段,但可把这些都放入主程序中。

中断服务程序的设计对系统的成败有至关重要的作用,要仔细考虑各中断之间的关系和每个中断执行的时间,特别要注意那些对同一个数据进行操作的ISR。

推荐阅读

史海拾趣

Compact公司的发展小趣事

随着全球环保意识的提高,电子行业对环保和可持续发展的要求也越来越高。Compact公司积极响应这一趋势,加大环保投入,采用环保材料和工艺,降低生产过程中的能耗和排放。同时,公司还致力于推动循环经济的发展,通过回收和再利用废旧电子产品,减少资源浪费和环境污染。这一举措不仅提升了公司的社会形象,还为公司的可持续发展奠定了坚实基础。

请注意,以上故事仅为示例,并不代表任何真实存在的企业情况。如果需要关于特定企业(如Compact公司)的准确信息,建议查阅相关公司的官方资料、行业报告或新闻报道。

绿索超容(GreenSource)公司的发展小趣事

随着电子市场的日益成熟,Compact公司意识到单纯的技术创新已不足以支撑其长期发展。于是,公司开始积极寻求市场拓展和战略合作的机会。通过与国内外知名企业建立合作伙伴关系,Compact公司成功将其产品打入国际市场,进一步扩大了市场份额。同时,通过与上下游企业的紧密合作,Compact公司实现了产业链的整合,提高了整体运营效率。

Forge Europa Ltd公司的发展小趣事

随着技术实力的不断增强,Forge Europa Ltd公司开始将目光投向国际市场。公司积极参与国际展会,与全球客户建立联系,并通过优化供应链管理,确保产品能够迅速响应国际市场需求。在欧洲市场,Forge Europa凭借其高品质的产品和专业的服务,迅速赢得了众多知名客户的青睐。同时,公司还不断拓展北美、亚洲等新兴市场,逐步建立起覆盖全球的销售网络。

Aydin Corp公司的发展小趣事

随着电子技术的快速发展,Aydin Corp意识到只有不断创新才能在市场中立于不败之地。公司投入大量资源用于研发,不断推出具有创新性和竞争力的产品。这些产品不仅性能卓越,而且设计独特,迅速赢得了消费者的青睐。同时,Aydin Corp还注重产品升级和迭代,以满足市场不断变化的需求。

Don Connex Electronics Co Ltd公司的发展小趣事

近年来,随着环保意识的提高,Don Connex Electronics积极响应绿色发展的号召,将环保理念融入产品设计和生产过程中。公司采用环保材料、节能减排的生产工艺,确保产品在使用过程中对环境的影响降到最低。同时,公司还积极参与环保公益活动,推动电子行业的绿色发展。

DFI公司的发展小趣事

DFI公司自创立之初,就致力于技术创新。在电子主板领域,DFI凭借其对高性能主板的深入研究,成功开发出多款领先行业的产品。例如,在2002年,DFI推出了LanParty UT nF4 SLI-DR Venus限量版主板,这款产品凭借其出色的性能和稳定性,迅速赢得了全球玩家的青睐。这一系列的创新举措不仅提升了DFI的品牌知名度,也为其在电子主板市场占据了重要地位。

问答坊 | AI 解惑

有像我这么闲的工作么

在这我只想发发牢骚……因为我现在就是在闲着,时时刻刻都开着EEWORLD    快毕业了,本来找工作都几乎没什么搭理的,发过好多简历都石沉大海。毕竟我只是专科学历,虽然参加过几次比赛,但感觉这些经历并没给我找工作带来什么的。 ...…

查看全部问答>

用iccavr写的循迹小车程序出错了 不知道怎么改

C:\\icc\\bin\\imakew -f xiaoche.mak     iccavr -c -IC:\\icc\\include\\ -e  -l -g -Wa-W  C:\\DOCUME~1\\Administrator\\MYDOCU~1\\小车\\xiaoche.c !W C:\\DOCUME~1\\Administrator\\MYDOCU~1\\小车/drv.h(14 ...…

查看全部问答>

RS485 通讯 帧错误

在TI-2812开发板上调试485通讯,用串口调试器向下发数据时,RX状态寄存器显示有帧错误,从下望上发数据时,串口调试器接受的数据是错误的,但发送0是接受到的也是0.请高手帮帮忙! …

查看全部问答>

S3C6410 WINCE6 SD卡升级 求解

最近在思考一个问题,就是有关SD卡升级的。 我看到过三星发布2442下的SD卡升级,但有个缺陷是只支持FAT格式的小容量卡,而且,在EBOOT里面去读写卡的block、sector,简直有点复杂。 我在想,如果是FAT32格式的(现在基本上都是FAT32格式了)SD卡能 ...…

查看全部问答>

Wince 下用C#实现媒体播放,最好是Media Player的调用。希望有经验的各位前辈随便露两手绝艺,让俺开开眼届。最好有源码!!

Wince 下用C#实现媒体播放,最好是Media Player的调用。希望有经验的各位前辈随便露两手绝艺,让俺开开眼届。最好有源码!! …

查看全部问答>

初学者问个简单问题:关于WINXP SP2下的环境配置问题!

小弟的机器是WinXP SP2 HOME EDITION,想问一下,在这个系统下如何配置编译环境?      相关软件:DriverStudio3.2               XP SP1 DDK       ...…

查看全部问答>

关于wince上显示的问题,急!!!

我在VS2005中建了一个c++的移动设备的MFC,是一个264  的解码器,现在要加一个显示的程序,最好能解一点播一点,本来VC上有源程序,移植后无法使用,现在毕设中,急啊,哪位仁兄能帮我看看用什么方法显示,谢谢,本人菜鸟,不好意思!! ...…

查看全部问答>

STM3272MHz解码jpg文件很慢

我用STM32 控制一个320x240的 TFT屏,需要显示jpg的文件,感觉刷整屏的时候速度很慢;显示bmp文件时刷整屏的时候就很快。STM32是不是不适合解码jpg文件呢?…

查看全部问答>

工欲善其事必先利其器

广大DIY爱好者们,随着你们DIY程度的不断深入,你们的DIY工具是不是也在一点点的增加,随着工具的增加,DIY的水平是不是也在不断地提高,随着水平的不断提高,DIY的作品是不是也是愈加的丰富,显摆的时刻到了! 活动要求: 1、显摆自己所有用于D ...…

查看全部问答>