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.

[参考译文] RM46L852:如何启用/禁用来自 HET 引脚的中断通知

Guru**** 2390755 points
Other Parts Discussed in Thread: RM46L852

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1210820/rm46l852-how-to-enable-disable-interrupt-notification-from-a-het-pin

器件型号:RM46L852

你好、朋友

我参与了一个项目(RM46L852)、该项目使用 HET 引脚(HET Port1、PIN_HET_7)作为中断引脚。  

对于 GIO、我可以使用以下函数获取通知、  

void gioEnableNotification(gioPORT_t *port, uint32 bit)
{
/* USER CODE BEGIN (11) */
/* USER CODE END */

    if (port == gioPORTA)
    {
        gioREG->ENASET = (uint32)1U << bit;
    }
    else if (port == gioPORTB)
    {
        gioREG->ENASET = (uint32)1U << (bit + 8U);
    }
    else
    {
        /* Empty */
    }
}
 

但是 HET 引脚怎么样、应该使用哪个函数、或者它需要在上面的函数中添加用户代码?

谢谢!

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

    Arthur、您好!

    如果 NHET 引脚被用作 GPIO 引脚、则不支持输入中断。

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

    您好、QJ

    感谢您的快速回复!
    我明白了。 实际上、我们使用 HET 引脚(例如 N2HET1[7])捕获外部脉冲、以查看脉冲是否到达、 并获得 通知。
    通常、脉冲宽度约为50us、但它是可变的。
    除了中断方法外、我是否可以使用 HET 引脚来捕获脉冲?

    此致、  

    Arthur

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

    Arthur、您好

    为了将管脚用作 N2HET 引脚、 中断可以由任何在其指令格式中有中断使能位的指令生成。

    当一条指令中的中断条件为真并且该指令的中断使能位 被置位时、然后在 N2HET 中断标志寄存器(HETFLG)中设定一个中断标志。  此标志的地址代码由当前定时器程序地址的五个 LSB 确定。 即使 N2HET 中断使能置位寄存器(HETINTENAS)中相应的位 为0、N2HET 中断标志寄存器(HETFLG)中的标志也被置位。 为了产生一个中断、在 N2HET 中断使能置位寄存器(HETINTENAS)中的相应位必须为1。 在 N2HET 中断处理例程中、主 CPU 必须首先确定 N2HET 内的哪个源创建了中断请求。  

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

    您好、QJ

    好的、我可以按照它进行操作、并尝试创建中断。  

    感谢您的一贯支持!

    此致、  

    Arthur