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.

[参考译文] TMDS64EVM:TMDS64EVM/PRU-GPIO/外部中断

Guru**** 2979400 points

Other Parts Discussed in Thread: TMDS64EVM, SYSCONFIG, AM6442

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1651460/tmds64evm-tmds64evm-pru-gpio-external-interrupt

器件型号: TMDS64EVM
主题中讨论的其他器件: SysConfig、 AM6442

在 TMDS64EVM 上执行测试时、我写信询问。

我打算在 PRU (ICSS) 资源中配置一个 GPIO、以便使用低电平有效信号作为中断来接收来自 PRU 的输入。 为此、我还需要注册一个回调函数。

我们的主流程使用 A53 和 R5F、我的查询涉及如何配置 PRU GPIO 和处理 R5F 内的中断。 如有任何指导、意见或参考、我将不胜感激。 配置 SysConfig 特别困难、并且没有可用的帮助文档。 如果您在设置 SysConfig 时至少提供有关每个参数的简要指南、我将不胜感激。

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

    您是否使用 SysConfig Pinmux 或 SysConfig MCU SDK?  

    pinmux 工具仅配置 padconfig 多路复用、而不配置中断设置。  

    我邀请了一位同事来帮助解答有关 SysConfig MCU SDK 工具的问题   

    ——保罗

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

    尊敬的 Dong:

    [引述 userid=“685801“ url=“~/support/processors-group/processors/f/processors-forum/1651460/tmds64evm-tmds64evm-pru-gpio-external-interrupt。] 我希望得到任何指导、意见或参考。

      有关 PRU 工程的参考、请参阅 examples_PRU_empty。

    此致、

    Tushar

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

    제가 하고 싶은건 μ s、PRU 코어에서 설계가 아니라 μ s、R5F에서 PRU의 GPIO를 제어하려는 거예요 μ s。 R5F에서 PRU의 GPIO리소스를 제어하여 외부인터럽트 신호를 받으려는 거예요 μ s。 그러기 위해 SYSCONFIG에서 PRU (ICSS)를 추가했는데、SYSCONFIG의 PRU 多路复用器模式 항목과 ICSSG0 INTC 内部信号映射 드롭다운 메뉴가 무엇을 설정하는건지 모르겠어요

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

    我要做的是从 R5F 控制 PRU 的 GPIO、而不是在 PRU 内核上进行设计。 我打算通过从 R5F 控制 PRU 的 GPIO 资源来接收外部中断信号。 为此、我在 SysConfig 中添加了 PRU (ICSS)、但我不知道 SysConfig configure 中的 PRU MUX Mode 项和 ICSSG0 INTC Internal Signals Mapping 下拉菜单。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [quote userid=“685801“ url=“~/support/processors-group/processors/f/processors-forum/1651460/tmds64evm-tmds64evm-pru-gpio-external-interrupt/6371630 通过 R5F 控制 PRU 的 GPIO、而不是在 PRU 内核上进行设计

    为什么不将 pinmux 配置为 SoC GPIO、然后从 R5F 控制、然后使用 SoC GPIO 驱动程序?

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

    我不明白。 请问我应该在 R5F 内核上使用 SOC GPIO 吗? 你知道我的问题吗? 我已经知道如何控制主域 GPIO、但这并不是我们现在需要的。 在我们的设计中、我们需要处理传入的外部低电平有效信号、并且响应需要几纳秒时间。 因此、我们打算使用 PRU 的 GPIO、该 GPIO 在 am6442 资源中提供高速响应。 我认为通用 GPIO 无法满足此速度要求。 但是、我们当前的主控制器是 R5F。 因此、我们正在考虑一种使用 PRU 的 GPIO 向 R5F 提供中断的方法。 我们打算从 R5F 控制 PRU 的 GPIO、这就是我询问该方法的原因。

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

    如果您正在使用 R5F 工程中的 PRU、并能够在 SysConfig 工具中配置 PRU GPI 引脚。 为什么您担心 Pinmux 设置。 该工具将自动生成 Pinmux 设置相关代码。

    请参阅下图。

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

    我知道您的答案和您提供的图片是 PRU 的 GPI 配置屏幕。 现在、如果有一个低电平有效信号从外部进入 PRG0_PRU0_GPI1 引脚、我希望在 R5F 上将此信号作为中断接收。 您提供的图中的中断设置在哪里?

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

    它位于同一 PRU 模块中、名称为 INTC 中断信号映射、 如下所示。

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

    谢谢你。

    在 R5F 上、用于配置主域 GPIO 和设置中断回调的代码如下:

    HwiP_Params_init (&hwiPrms);

    hwiPrms.intNum = intrNum;

    hwiPrms.callback =&callback_LDRDY_AI;

    hwiPrms.args =(void *) pinNum;

    /* GPIO 中断是脉冲类型中断*/

    hwiPrms.isPulse = true;

    RetVal = Hwip_construct (&gGpioHwiObject、&hwiPrms);

    在上面的代码中、callback_LDRDY_AI 是在输入外部低电平有效信号时执行的回调函数的名称、可以在 SysConfig 中对其进行配置。 是否无法以类似的方式在 R5F 上配置 PRU GPI1 中断和回调函数? 您提供的 INTC 中断信号映射图中未包含该功能。 还是可以在主域 GPIO 等代码中实现它? 您能举个例子吗?

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

    您应该能够使用 HwiP API 配置中断。 此代码已存在于 pruicss_g_v0.c  文件提供的 PRUICSS_registerIrqHandler () API 中。

    请参阅以下内容。

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

    这并不容易理解。

    关于上面的 INTC Interrupt Signal Mapping(INTC 中断信号映射)屏幕、我应该如何设置每个参数、即 INTC Event Signal(INTC 事件信号)、INTC Host Interrupt(INTC 主机中断)等? 此外、您是否要让我通过输入函数参数(如 irqHandler、pruEvtoutNum 和 intrNum)来调用 r5f 用户代码中的 PRUICSS_registerIrqHandler()? 如果是、如何获得这些参数值? 它们与 INTC 中断信号映射参数之间有何关系? 请详细说明。

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

    要了解有关 PRU 中断的更多信息、请参阅 器件 TRM 的第 6.4.7 节 PRU_ICSSG 本地 INTC。

    共有 160 个可用信号事件、其中 64 个是内部事件、96 个是外部事件。

    总共支持 20 个中断通道和中断生成。  

    请参阅下图。

    与在 SysConfig 中一样、您必须适当选择参数。 如以上 reply(re: TMDS64EVM:TMDS64EVM/PRU-GPIO/外部中断)  所示、您可以看到事件信号是 16(即内部事件)映射到通道 2 和主机中断 2。

    以上说明了如何使用中断号、事件输出号传入 IRQ 处理程序。

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

    저는 R5F 코어를 메인 컨트롤러로 사용하고 있으며、R5F의 PRU GPIO 리소스를 사용하는 동안 인터럽트를 수신하려고 합니다。 R5F 코드 외에 추가적인 PRU 코드를 구현해야 할까요?

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

    我正在使用 R5F 内核作为主控制器、并打算在使用 R5F 上的 PRU GPIO 资源时接收中断。 除了对 R5F 内核进行编程之外、我是否还需要实现 PRU 内核的编程?

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

    尊敬的 Dong:

    在 SysConfig 中添加 PRUICSS 时、会为 R5F 内核自动生成用于 PRU 初始化的相应代码。

    此致、

    Tushar