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.

[参考译文] RM57L843:N2HET PIN 配置为 GIO 引脚、作为输入使能中断

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1259233/rm57l843-n2het-pin-configure-as-gio-pin-as-input-enable-interrupt

器件型号:RM57L843
主题中讨论的其他器件:HALCOGEN

您好、TI 团队、

当到引脚的输入为高电平或低电平时、我要将 N2HET 引脚配置为 GIO 引脚作为输入。

请提供一些相关示例程序。

谢谢。此致、

A. Ajith Kumar

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

    尊敬的 Ajith Kumar:

    (+) TMS570LS1227:HET 用作 GIO 输入、以触发下降沿中断-基于 Arm 的微控制器论坛-基于 Arm 的微控制器- TI E2E 支持论坛

    请参阅上面的主题、我已随附用于 LC4357的代码、以了解类似要求。

    将其作为参考并按照它进行修改。

    --

    谢谢。此致、
    Jagadish。

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

    Jagadish、您好!

    感谢您的答复、

    上面的线程是使用边沿中断来创建中断的、那里只有8个边沿中断、所以我们可以使用8引脚作为边沿中断。 但我想使用20个引脚作为 GIO 中断。

    首先、我已将 HET 端口1引脚配置为 GIO 并设置为输入方向。 当引脚为高电平或低电平时、程序流进入中断。

    我已在下面附上该计划、

    #include "HL_sys_common.h"
    #include "HL_Gio.h"
    #include "HL_HET.h"

    空 main ()

    {
    _enable_interrupt_();
    gioInit ();
    hetInit ();
    gioSetDirection (hetPORT1、0x00000000);

    gioEnableNotification (hetPORT1、4);
    gioEnableNotification (hetPORT1、9);
    gioEnableNotification (hetPORT1、2);
    gioEnableNotification (hetPORT1、18);
    gioEnableNotification (hetPORT1、16);
    gioEnableNotification (hetPORT1、30);
    gioEnableNotification (hetPORT1、14);
    gioEnableNotification (hetPORT1、12);
    gioEnableNotification (hetPORT1、22);
    gioEnableNotification (hetPORT1、27);
    gioEnableNotification (hetPORT1、29);
    gioEnableNotification (hetPORT1、31);
    gioEnableNotification (hetPORT1、24);
    gioEnableNotification (hetPORT1、26);
    gioEnableNotification (hetPORT1、10);
    gioEnableNotification (hetPORT1、28);
    gioEnableNotification (hetPORT1、8);
    gioEnableNotification (hetPORT1、23);
    gioEnableNotification (hetPORT1、11);
    gioEnableNotification (hetPORT1、1);
    while (1);

    void gioNotification (gioPORT_t *端口、UINT32位)
    {
    //停止电机

    在这里、我已经在 halcogen 中启用了 Gio High 和 Gio Low 中断。 但我并没有意识到我犯了什么错误。

    请引导我、

    谢谢。此致、

    A. Ajith Kumar

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

    尊敬的 Ajith Kumar:

    您无法为配置为 GIO 模式的 HET 引脚启用 GIO 通知。

    因为如果看到函数  gioEnableNotification 的定义:

    它们仅在端口为 gioPORTA 或 gioPORTB 时启用 通知、但这些端口除外、它不会启用通知。

    因此、我们只能针对一个 HET 模块启用8个通知、此处我们总共使用了两个 HET 模块。 这意味着我们可以配置多达 16个 HET 中断。

    --

    谢谢。此致、
    Jagadish。

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

    Jagadish、您好!

    如何使用 N2HET2引脚作为边沿中断、我已经尝试 n2het2[5]作为边沿0。 但它无法正常工作。 请使用 halcogen 中的过程在 n2het2定时器中创建边沿0。

    谢谢。此致、

    A: A·库马尔

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

    尊敬的 Ajith Kumar:

    e2e.ti.com/.../N2HET18_5F00_AS_5F00_INPUT_5F00_EDGE_5F00_TRIGGERING_5F00_TEST_5F00_LC4357.zip

    这是我要介绍的一个经过测试的示例。 请将其用作参考并进行必要的修改。

    我通过在"edgeNotification"函数中设置一个断点来测试这个示例。  一旦我在 HET1上应用了一个下降沿信号,它就会命中断点。

    --

    谢谢。此致、
    Jagadish。

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

    Jagadish、您好!

    我使用了 HET1端口、在完全下降沿或上升沿时、我获得了边沿中断。 当我尝试在 HET2端口不工作时、我已经启用了 VIM 通道63和73、但当向引脚施加上升/下降信号时、未达到中断。 在 HET2的 halcogen 中所做的更改。

    谢谢。此致、

    A: A·库马尔

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

    尊敬的 Ajith Kumar:

    以下是 HET2_5下降沿中断的工作示例。

    e2e.ti.com/.../N2HET2_5F00_EDGE_5F00_TRIGGERING_5F00_TEST_5F00_RM57.zip

    在本例中、我将控制器引脚的 D12配置为 N2HET2_5功能、我在 RM57 Launchpad 中测试了此示例、运行正常。

    如您所见、在应用下降沿代码后、会命中断点。

    我怀疑您最终失败的原因之一:

    大家可以看到、有多个引脚可实现 N2HET2_5功能、因此请确保将功能配置到正确的引脚、并确保在正确的引脚上进行测试。 否则、它将不起作用。

    在我的示例中、我使用 D12引脚进行测试、该引脚具有 N2HET2_5的默认功能、因此我无需对多路复用器配置进行任何更改。 但如果您尝试使用 D16、则应在 HALCoGen 的引脚多路复用器表中对其进行配置。

    --

    谢谢。此致、
    Jagadish。