This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/TMDSRM48HDK:VIM 优先级编码

Guru**** 1831610 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/851318/ccs-tmdsrm48hdk-vim-priority-encoding

器件型号:TMDSRM48HDK

工具/软件:Code Composer Studio

您好、TI、

我对 VIM 优先级编码有一个问题。 根据我的独立、CHANCTRL 负责相应中断处理程序的映射。 在这种情况下、优先级编码仅在示例2中断同时触发时生效。 在这种情况下、编号最低的中断处理程序具有最高的优先级。 此外、CHANCTRL 具有初始默认状态、其中每个 INTx 都进行了相应映射。

TI 提供了一个 API VimChannelMap()来设置 VIM 映射顺序。 但这里我有一个问题、因为 API 直接与中断处理程序本身配合使用、RM48的中断默认情况下不可中断、但您可以使用一些软件开销(例如发送程序)来实现。 因此、API 本身在这里不起作用、这是因为调度程序使用 VIM IRQINDEX 的回读 来找出中断的主触发器是什么。

当您使用全局中断调度程序时、如何修改优先级编码、因为我希望允许嵌套中断。 使用全局中断发送程序时、是否需要注意通过回读 IRQINDEX 在软件中对中断进行解码? 我只想提一下、我不会将 FIQ 用于保留的中断、例如 ESM 等

当我在 CHANCTRL 寄存器中播放以更改 rticompare 顺序时、我会遇到一个非常奇怪的系统行为。 例如、当我更改 rtcompare0和 rtcompare3的顺序时、我的应用程序中的调用顺序将被反转。  

我不确定通过 CHANCTRL 寄存器进行的优先级更改是否适用于通过全局中断调度程序中的 IRQINDEX 回读进行中断解码的情况?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    请查看此应用报告、了解有关在 Hercules MCU 上实现嵌套中断的更多信息: