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.

[参考译文] PROCESSOR-SDK-AM62X:无法通过调用 HwiP_disable ()来禁用中断

Guru**** 2540720 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1362394/processor-sdk-am62x-interrupts-cannot-be-disabled-by-calling-hwip_disable

器件型号:PROCESSOR-SDK-AM62X

调用 HwiP_disable ()会禁用优先级为7的中断,但仍会生成优先级为0-6的中断。

我想禁用所有优先级中断。

文档内容为"禁用所有中断"。 但这个 API 不是吗?

Priority 是指 HwiP_structure ()的参数 HwiP_Params.priority。

环境

CCS:12.6.0.00008  

- AM62x MCU+ SDK : 09.02.00.38

-董事会:SK_AM62

-核心:M4F

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

    您好!

    感谢您访问德州仪器 E2E 支持论坛。

    我已获取您的意见并进行处理。 请等待一段时间再返回。

    此致、

    图沙尔

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

    您好!  

    感谢您的耐心等待。

    我能够在末端重现此问题并找到问题的根本原因。

    Hwip_disable () API 在内部调用  _set_interrupt_priority () 一种 API、它以 低于特定级别的紧急性禁用所有中断、并使 M4F 内核的较高紧急性的中断完全不被禁用。

    HwiP_禁用 M4F 内核的 API 以低于指定的方式调用 API、这仅禁用优先级小于或等于7的中断。

    _set_interrupt_priority((7U) << (HwiP_NVIC_PRI_SHIFT))

    请使用以下代码更新 HwiP_disable API。

    uintptr_t HWI_SECTION HwiP_disable(void)
    {
        return (uintptr_t)_set_interrupt_priority((1U) << (HwiP_NVIC_PRI_SHIFT));
    }

    API 可在以下位置找到: ${MCU+SDK}\source\kernel\nortos\dpl\m4\Hwip_armv7m.c 文件。 使用上述更改更新文件后、重新编译库。

    从以下位置运行以下命令: ${MCU+SDK}\source\kernel\nortos 目录

    • 清理磁带库。

    gmake -f makefile.am62x.m4f.ti-arm-clang PROFILE=debug clean
    gmake -f makefile.am62x.m4f.ti-arm-clang PROFILE=release clean

    • 重新构建库。

    gmake -f makefile.am62x.m4f.ti-arm-clang PROFILE=debug
    gmake -f makefile.am62x.m4f.ti-arm-clang PROFILE=release

    重新生成应用程序。

    在执行上述步骤之后、您将能够禁用所有需要优先级为0的中断的中断。

    此致、

    图沙尔

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

    允许我禁用中断。
    感谢你的帮助。

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

    您好!

    感谢您的确认。

    很乐意提供帮助

    此致、

    图沙尔