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.

[参考译文] RTOS/PROCESSOR-SDK-K2G:头文件 pinmux.h 中缺少 PRU 模块

Guru**** 2539500 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/614832/rtos-processor-sdk-k2g-the-pru-module-is-missing-in-the-header-file-pinmux-h

器件型号:PROCESSOR-SDK-K2G
主题中讨论的其他器件:K2GICEEVMK2G

工具/软件:TI-RTOS

PROCESSOR_SDK_RTOS_k2g_4_00_00_04

pdk_k2g_1_0_6

使用 TI PinMux 生成的输出文件构建定制电路板库时出错。
根据 PROCESSOR_SDK_RTOS_k2g_4_00_00_04的 SDK RTOS 发行说明、
"Pinmux Tool Integration to Board Library for K2GEVM、K2GICE and AM571x IDK"

我通过在 TI PinMux 工具 v4.0.1492的"外设"选项卡下选择 PRU_ICSS0_PRU 添加了 PR0_PRU0 GPI 和 GPO。 请参见 下图。

生成的输出文件66AK2G0x_pinmux_data.c 包含以下内容:
(笑声)
#ifndef BUILDCFG_MOD_PRU_ICSS
#define BUILDCFG_MOD_PRU_ICSS
#endif /* BUILDCFG_MOD_PRU_ICSS *
(笑声)
#if 已定义(BUILDCFG_MOD_PRU_ICSS)
   {CHIPDB_MOD_ID_PRU_ICSS、gPru_icssPinCfg}、
#endif /* if defined (BUILDCFG_MOD_PRU_ICSS)*
(笑声)


但是、当构建电路板库时、我得到"CHIPDB_MOD_ID_PRU_ICSS"未定义错误、如下所示:
(笑声)
"src="/evmK2G/66AK2G0x_pinmux_data.c"、第2132行:错误#20:标识符
"CHIPDB_MOD_ID_PRU_ICSS"未定义
1在"src/evmK2G/66AK2G0x_pinmux_data.c"的编译中检测到错误。
(笑声)


头文件 pinmux.h 中似乎缺少 PRU 模块
C:\ti\pdk_k2g_1_0_6\packages \ti\board\src\evmK2g\include\pinmux.h
typedef 枚举

   CHIPDB_MOD_ID_CPTS、
   CHIPDB_MOD_ID_PWMSS、
   CHIPDB_MOD_ID_MCASP、
   CHIPDB_MOD_ID_DSS、
   CHIPDB_MOD_ID_TIMER、
   CHIPDB_MOD_ID_DCAN、
   CHIPDB_MOD_ID_GPIO、
   CHIPDB_MOD_ID_McBSP、
   CHIPDB_MOD_ID_UART、
   CHIPDB_MOD_ID_PCIe、
   CHIPDB_MOD_ID_MMCSD、
   CHIPDB_MOD_ID_DEBUGSS、
   CHIPDB_MOD_ID_GPMC、
   CHIPDB_MOD_ID_EMAC、
   CHIPDB_MOD_ID_CPSW、
   CHIPDB_MOD_ID_DDR、
   CHIPDB_MOD_ID_MCSPI、
   CHIPDB_MOD_ID_USB、
   CHIPDB_MOD_ID_SYSTEM、
   CHIPDB_MOD_ID_I2C、
   CHIPDB_MOD_ID_QSPI、
   CHIPDB_MOD_ID_MLB、
   CHIPDB_MOD_ID_INVALID = UINT32_MAX
}芯片模块 ID_t;

在 pinmux.h 中添加了"CHIPDB_MOD_ID_PRU_ICSS"后、我可以成功构建自定义电路板库
这是构建电路板库的正确方法吗? 我还缺少其他什么吗? 谢谢。

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

    我已将此内容转发给 TI-RTOS 专家。 他们的反馈应发布在此处。

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

    约书亚、

    正确的方法是使用 pinmux.h 和 pinmux_data.c 、这些是通过 pinmux 工具自动生成的。  您可以下载/使用适用于此平台的基于云的 TI Pinmux 工具、该工具可从此处下载:

    打开工具、然后打开文件。 K2GEVM.pinmux 或 K2GICE.pinmux (取决于您的定制板所基于的板)。 这将显示如下所示的接口。

    选择要配置的 PRU 引脚、然后从"生成的文件"选项卡下载.h 和.c 文件、并替换电路板库中的文件。

    希望这对您有所帮助。

    此致、

    Rahul

    我们在移植部分的 Processor SDK RTOS 培训中讨论了该过程。 (9.5)

    training.ti.com/application-development-using-processor-sdk-rtos

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

    感谢您的详细说明。

    遗憾的是、我在原始帖子中未成功附加该图(实际上、这是我在 TI PinMux 工具中设置的屏幕截图)。 这可能会误导您。
    是的、我使用 TI PinMux 工具生成两个文件:"66AK2G0x_pinmux.h"和"66AK2G0x_pinmux_data.c"、用于构建电路板库。


    pinmux.h 文件不是 TI PinMux 工具中自动生成的文件、与生成的"66AK2G0x_pinmux.h"不同。
    它位于 C:\ti\pdk_k2g_1_0_6\packets\ti\board\src\evmK2g\include\pinmux.h 中、如 processor_sdk_rtos_k2g_4_00_04中提供。 它不定义"CHIPDB_MOD_ID_PRU_ICSS"。

    如果您在 C:\ti\pdk_k2g_1_0_6\packages/ti\board\src\iceK2g\include 中检查 pinmux.h 中的 iceK2G
    它定义了"CHIPDB_MOD_ID_PRU_ICSS"。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    啊... 我现在理解这个问题。 是的、没错、如果您要启用 PRU ICSS、则需要将其添加到 pinmux.h 文件中、正如您从启用 PRU 引脚的 iceK2G 电路板库中看到的那样。

    请参阅以下网址中的 pinmux.h:
    pdk_k2g_1_0_6\packages \ti\board\src\iceK2G\include