当前位置:首页 > 芯闻号 > 充电吧
[导读]如果中断中用到了其它复杂的运算,用户必须明确告诉编译器那些寄存器或数据段需要额外保护。请参考C18的使用手册。

1)针对PIC18系列,进入中断时,不管是高优先级中断还是低优先级中断,三个重要的寄存器--WREG、STATUS和BSR,一定会被硬件自动压入只有一级深度的“影子”寄存器中保护;

2)高优先级中断在处理过程中不可能被低优先级中断打断,故影子寄存器中的内容不会被破化。中断返回指令可以指示用“fast return”形式直接用影子寄存器中的内容快速恢复三个重要寄存器的原始值;

3)低优先级的中断服务可能被高优先级中断所打断,故原本也是保护在影子寄存器中的内容可能会被冲掉。因此用户必须自己编写额外的代码将上述三个寄存器保存在其它独立的备份单元中,不必理会影子寄存器的内容。返回时也不能通过“fast return”形式利用影子寄存器的内容恢复原现场,自己编写代码从备份单元中恢复寄存器的原始值;

4)如果用MPLAB-C18编译器,只要声明了低优先级的中断服务函数属性为“interruptlow”,编译器会自动加入额外的指令保护和恢复三个重要寄存器。中断退出时也不会用“fast return”形式。

5)如果中断中用到了其它复杂的运算,用户必须明确告诉编译器那些寄存器或数据段需要额外保护。请参考C18的使用手册。
请教张老师:关于中断嵌套的问题? - zxc526 2004-10-9 17:55:19 [ID:1390531 点击:146] (334 Bytes) (100)
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

MIKROE增加了图形功能,CLANG支持ARM和RISC-V以及许多其他功能

关键字: 编译器 RISC-V架构 工业自动化

74LS175是一款4D触发器集成电路,它包含6个D触发器,这些触发器可以组合起来形成寄存器或抢答器等多种功能部件。

关键字: 74ls175 触发器 寄存器

单片机复位电路的作用是:使单片机恢复到起始状态,让单片机的程序从头开始执行,运行时钟处于稳定状态、各种寄存器、端口处于初始化状态等等。

关键字: 复位电路 单片机 寄存器

IAR Embedded Workbench for Arm已全面支持恩智浦最新的S32系列,可加速软件定义汽车的车身和舒适性应用的开发

关键字: 电机控制 电动汽车 编译器

这款新编译器专为dsPIC®数字信号控制器 (DSC)优化设计,可为实时应用定制许可选项

关键字: 编译器 数字信号控制器 自动驾驶

C语言编译器是一种用于将C语言源代码转换为可执行程序的软件工具。它的主要功能是将C语言代码翻译成机器语言,以便计算机能够理解和执行。C语言编译器通常包括预处理器、编译器、汇编器和链接器等多个组件,它们协同工作以完成编译过...

关键字: C语言 编译器 Microsoft Visual C++

寄存器变量是计算机中一种重要的存储方式,它使用CPU中的寄存器来存储数据和指令。寄存器直接与CPU的运算和控制部件相连,因此访问速度非常快,通常在一个CPU周期内就能完成数据的读写操作。相比于内存和硬盘等存储设备,寄存器...

关键字: 寄存器 存储器

寄存器和存储器是计算机及其它电子设备中的两种重要存储组件,它们在存储方式、存储容量和访问速度等方面存在明显的差异。

关键字: 寄存器 存储器

寄存器和内存是计算机系统的两个重要组成部分,它们之间存在着密切的关系。本文将介绍寄存器和内存的基本概念、功能、类型以及它们之间的关系,旨在帮助读者更好地理解计算机系统的运行原理。

关键字: 寄存器 内存

寄存器是计算机硬件中的重要组件,用于临时存储数据和指令。正确地使用寄存器能够提高程序的执行效率,然而不正确的使用也可能导致各种问题。本文将详细介绍寄存器的使用方法以及在使用时需要注意的事项。

关键字: 寄存器 计算机硬件
关闭
关闭