TI中文支持网
TI专业的中文技术问题搜集分享网站

6746中断嵌套的用法

请问TI有提供6746中断嵌套的例程吗?谢谢!

Denny%20Yang99373:

在普通的中断处理程序里,不要把中断关掉,就可以实现嵌套了

xiaoan li:

回复 Denny%20Yang99373:

您看我理解的对不对:

1)C语言程序中进入中断子程序,会自动关闭全局中断?

2)C语言程序中,若要实现A中断可被B中断打断,则进入A中断后,需要手动打开全局中断,以允许B中断可以打断A中断,实现中断嵌套,这样理解对吗?

在文档《TMS320C674x DSP CPU and Instruction Set User's Guide (Rev. B)-sprufe8b》P649的5.6.2 Nested Interrupts中,关于实现中断嵌套,要求在中断服务子程序中实现:

1. The contents of IRP (or NRP) must be saved2. The contents of the PGIE bit must be saved3. The contents of ITSR must be saved4. The GIE bit must be set to 1

对于C程序来说,是不是只需要打开总中断(第4步)即可?

谢谢

Tony Tang:

回复 xiaoan li:

不对。

#1. 这是系统自动关的,跟C语言没关系。

#2. 不只这些,中断返回寄存器IRP的值不保存,新中断来时会把它覆盖,那还怎么回到最开始被中断的位置。

建议用BIOS的dispatch来实现中断嵌套,或者参考SYSBIOS的源码。

赞(0)
未经允许不得转载:TI中文支持网 » 6746中断嵌套的用法
分享到: 更多 (0)