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.

[参考译文] AM2634-Q1:对 IPC RPMsg ADC 的查询、AM263P4 上内核 1-0 和内核 0-0 之间的 GPIO 数据交换

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1533336/am2634-q1-queries-on-ipc-rpmsg-adc-gpio-data-exchange-between-core-1-0-and-core-0-0-on-am263p4

器件型号:AM2634-Q1
主题中讨论的其他器件:AM263P4SysConfig

工具/软件:

尊敬的 TI E2E 团队:

我正在努力实现 AM263P4 CC 和使用的配置 IPC RPMsg 用于在内核 1-0 (R5F1-0) 和内核 0-0 (R5F0-0) 之间交换 ADC 和 GPIO 数据

工作原理:

  1.  从内核 1-0 到内核 0-0 的 IPC GPIO 消息交换。
  2. ADC 单通道和多通道、 adc_soc_software在内核 0-0 上使用示例 (NoRTOS)。
  3. 值接收和通过 IPC 在内核 0-0 上从内核 1-0 打印。

所面临的问题:

1. ADC 未在内核 1-0 上读取数据

  • ADC 的 SysConfig 配置了该器件 内核 1-0 向其中发送数据 内核 0-0 通信。

  • 最大值 内核 1-0 上未读取 ,但 内核 0-0 上采用相同的配置

  • 观察结果: 内核 0-0 所示 12 个存储区域 、其他核心显示 5 个地区 。 这是否会导致内核 1-0 上的 ADC 读取问题?

2. PMIC 相关性差异

  • 在内核 1-0 上使用 ADC 需要打开/关闭/配置 PMIC 驱动程序

  • 使用mcspi驱动器打开/关闭以处理 PMIC、但是 仍然不读取值

  • 位于内核 0-0、ADC 上 无需显式 PMIC 驱动程序即可工作

  • 为什么内核 1-0 需要 ADC 的 PMIC 处理、而内核 0-0 不需要?

3. IPC RPMsg 多核不自动运行

  • 多核 IPC RPMsg 没有 在所有内核上自动启动

  • 为了使 IPC 正常工作、需要在 CCS 中手动运行每个内核。

  • 如何处理 IPC RPMsg 多核初始化 实际应用中的自动启动

4、共享内存日志读取器冲突

  • Shared Memory Log Reader在内核 0-0 上启用:

    • 可以打印从内核 1-0 接收的值和从内核 1-0 发送的值。

  • 在内核 1-0 上启用该功能:

    • 无法看到发送的值、仅看到内核 0-0 上的接收。

  • 为什么会发生此行为、以及发生什么 适用于跨内核共享存储器日志读取器的最佳调试策略

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

    您好、

    [引述 userid=“660329" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1533336/am2634-q1-queries-on-ipc-rpmsg-adc-gpio-data-exchange-between-core-1-0-and-core-0-0-on-am263p4

    3. IPC RPMsg 多核不自动运行

    • 多核 IPC RPMsg 没有 在所有内核上自动启动

    • 为了使 IPC 正常工作、需要在 CCS 中手动运行每个内核。

    • 如何处理 IPC RPMsg 多核初始化 实际应用中的自动启动

    [/报价]

    如果我理解正确、此处提到的问题是、out 文件需要手动加载到每个 R5F 内核并单独运行? 如果是、您可以在 CCS 目标配置中对内核进行分组、同时加载和运行。 如果您希望应用程序中的内核同步、也可以通过 API 来执行此操作:  

    或者、如果您在 CCS 中直接启动工程的调试会话、则相应的.out 文件会直接加载到内核上。

    对于实际应用、您需要刷写多核应用程序映像、该映像将在 SBL 执行后开始执行、在这种情况下、您可以使用上述 API 同步所有 R5F 内核、然后启动应用程序

    [引述 userid=“660329" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1533336/am2634-q1-queries-on-ipc-rpmsg-adc-gpio-data-exchange-between-core-1-0-and-core-0-0-on-am263p4

    4、共享内存日志读取器冲突

    • Shared Memory Log Reader在内核 0-0 上启用:

      • 可以打印从内核 1-0 接收的值和从内核 1-0 发送的值。

    • 在内核 1-0 上启用该功能:

      • 无法看到发送的值、仅看到内核 0-0 上的接收。

    • 为什么会发生此行为、以及发生什么 适用于跨内核共享存储器日志读取器的最佳调试策略

    [/报价]

    您能否从 example.syscfg 中确认:

    1、一个内核具有“日志读取器“权限、其他内核具有“日志写入器“权限

    2.为所有内核,特别是日志读取器内核,正确配置共享存储器。

    另外需要记住的一点是、 当为 nortos 应用程序启用共享存储器读取器时、用户需要调用 DebugP_shmLogRead API 来从共享存储器中读取日志。  DebugP_shmLogRead 将读取日志一次并退出、因此应用程序需要定期调用此 API 以收集连续日志。 此外、确保为具有日志读取器权限的内核配置 UART0。

    此外、只有一项很小的建议、请以雾化方式提出 E2E(对于不同模块的问题,请采用不同的 E2E)以缩短周转时间、因为模块专家各不相同。 对于问题 1 和 2、我将将此问题重新分配给 ADC 和 PMIC 专家。

    此致、
    Shaunak

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引述 userid=“660329" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1533336/am2634-q1-queries-on-ipc-rpmsg-adc-gpio-data-exchange-between-core-1-0-and-core-0-0-on-am263p4

    PMIC 相关性差异

    • 在内核 1-0 上使用 ADC 需要打开/关闭/配置 PMIC 驱动程序

    • 使用mcspi驱动器打开/关闭以处理 PMIC、但是 仍然不读取值

    • 位于内核 0-0、ADC 上 无需显式 PMIC 驱动程序即可工作

    • 为什么内核 1-0 需要 ADC 的 PMIC 处理、而内核 0-0 不需要?

    [/报价]

    尊敬的 Gowthami、我正在研究您在读取内核 1 上的 ADC 值时遇到的问题、但仅当您使用外部 Vref 时、AM263P 才需要 PMIC 驱动器。

    请问您对 ADC 使用的是外部还是内部 Vref。

    此致、
    阿克什特