如何解决小中间体期间中断?

G

Guest

Guest
嗨,
目前,当我实现了系统的ISR的策略,我发现
, 当一个中断排序训练器掩盖了它
, 以便相同的中断不会溢出前一个正在处理!我重新开中断后
, 已经完成,其中规定
, 不得超支硬件中断时
, 显着的来源,即中断源可以产生一个中断请求时
, 正常未蒙面虽然中断源的处理过程中发生的ISR的过程。

这是否合理?

事实上,为了实现这种mechanis,硬件中断信号时
, 总是asseted相应的中断源和掩码位被清除。

或者
, 如果不是,如何处理呢?

Thansk提前!

汤姆森

 
是的,这是正常的使用嵌套的中断
, 如果你能正确地估计此类料处理一些发生在同一时间和持续时间来处理这些。
如果你不能-你的系统可能会崩溃。

在ISR的日常开销处理系统的依赖
, 必须正确地计算和测量
, 以避免长期ISR的handlings。在信号或在ISR或其他系统调用互斥体报告可能需要很长时间。15分钟后添加:让说
, 一些情况下:
-有限的栈。那你必须作为dipeest functio呼吁总和计算程序中的最大堆栈加为所有可能的嵌套中断伊文它们在顺序触发需要-最坏的情况。
- 2同时发生中断嵌套序列-第一中断外周血甲,对外周血B和外周血甲又三分之一。这是您应该使用中断嵌套检测一个变量的中断(ISR的增加它刚刚抵达时
, 但在开始允许嵌套的中断服务专线分销
, 然后禁用中断变量递减刚刚在离开之前
, 国际专线分销)如果感冒为特定类型的麻烦。这种处理允许在同一时间的中断嵌套知道。
-....mmmm添加您的情况下这里的模式
, 寻求一个解决办法。

还试图找到快的方式-如果可能的话只是记录事件和后来的过程-这样做。如果您cvan记住
, 处理时间少于最短nonlatency时间中断时间-继续进行。如果没有-必须允许嵌套。

 

Welcome to EDABoard.com

Sponsor

Back
Top