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.

[参考译文] LP-AM243:针对所有内核从同一 UART 接口进行日志记录

Guru**** 2460380 points
Other Parts Discussed in Thread: SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1477296/lp-am243-logging-from-the-same-uart-interface-for-all-cores

器件型号:LP-AM243
主题中讨论的其他器件:SysConfig

工具与软件:

您好;

我想将用于所有内核的 UART 日志记录的接口分配给 USART0。 不过、当我从 SysConfig DebugP 选项卡从多个内核进行此分配时、我会像预期的那样收到冲突错误。  
简而言之、我想使用 USART0来记录所有内核的日志功能。

如何提供此功能? 或许有一种方法可以使用 DebugP_shmLogRead ()方法来实现这一点?  

是否可以使用一种方法将所有内核的记录数据写入共享存储器、然后使用 DebugP_shmLogRead 方法通过单个内核的 USART0进行发送?

此致
卡迪尔

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

    尊敬的 Kadir:

    我尚未尝试使用  DebugP_shmLogRead、但我认为您可以这样做、但可以用于 nortos 应用。

    此致、
    Vaibhav

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

    您好!

    请浏览名为 CDC_echo 的示例的实现。

    C:\ti\mcu_plus_sdk_am64x_10_01_00_32\examples\usb\device\CDC_echo\am64x-evm\r5fss0-1_nortos\ti-arm-clang

    C:\ti\mcu_plus_sdk_am64x_10_01_00_32\examples\usb\device\CDC_echo\am64x-evm\r5fss0-0_nortos\ti-arm-clang

    R50_1 NoRtos 使用  DebugP_shmLogRead ()。

    此致、

    Vaibhav

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

    Valibhav:如果我记得没错、如果我们尝试在 A53和 R5内核之间设置一个通用 UART 接口、那么在 AM6x 上就无法做到这一点-对吗?

    谢谢

    吉姆

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

    您好!

    如果尝试在 A53和 R5内核之间设置通用 UART 接口、则无法在 AM6x 上执行此操作- true?

    我不确定是否有人尝试过此功能、或者这是否属于 IP 限制。

    但是在 R 内核之间、根据我之前分享的上述示例、这似乎是可行的。

    此致、

    Vaibhav

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

    Vaibhav -您可以询问 (22) Nick Saulnier 的个人资料- Nick Saulnier - TI E2E 支持论坛 对此发表评论吗?  我知道可以将一个 SoC UART 块分配给一个 A53或 R5内核-但我想知道是否可以动态地重新配置分配-或者在这些内核之间共享 UART 程序。

    吉姆

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

    你好、 Kadir、
    1)请确切确认您要写入 UART 外设的内核(例如、所有 MCU+内核? 所有 MCU+内核、以及 Linux?)
    2) 2)您希望在每个内核上运行什么操作系统? (例如、在 R5F、FreeRTOS、裸机或 NORTOS 上、还有其他情况吗? 等)

    您好、Vaibhav、
    澄清一下:您是否认为 DebugP_shmLogRead 仅适用于 NORTOS? 或者您是否只是说当前示例是使用 NORTOS 编写的、但它仍能用于 FreeRTOS?

    此致、

    Nick

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

    抱歉、我看到我们使用的是 AM243x。 因此这里没有 Linux 或 A53内核。

    从概念性的角度来看、只有一个软件实例应控制特定的外设。 但是、如果部署了一个驱动程序、允许每个内核向同一共享存储器区域写入数据、并且只有一个内核控制从该共享存储器区域打印数据的 UART、则没有问题。

    此致、

    Nick

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

    您好、Nick;

    没错。 需要仅从一个软件实例控制 UART 实例。  
    我的问题是:是否有任何 SDK 方法可以允许每个内核写入共享存储器、并且只有一个内核在共享存储器中打印日志?

    例如、从内核0-0 DebugP_writeSharedmemory...中
               从内核1-0 DebugP_printSharedMemoryLog... (在 SysConfig 中将调试配置为 UART)或类似   DebugP_shmLogRead 的内容

    或者是否有任何其他机制支持此概念。


    谢谢

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

    BTW、我使用 FreeRTOS、我要通过内核0-1上的 UART 发送所有日志、并按内核0-0和其他人共享日志

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

    您好!

    感谢您的耐心。

    顺便说一句、我使用 FreeRTOS、我想通过内核0-1上的 UART 发送所有日志、并通过内核0-0和其他人共享日志

    让我来使用 FreeRTOS 检查一下这个演示的可行性。

    我理解您的流程:

    因此、一个内核写入一个共享存储器、而另一个内核则从该共享存储器读取数据。

    此致、

    Vaibhav

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

    您好!

    是的、这是我的流程。 所有4个内核将记录数据写入共享存储器、第五个内核(内核0-1)通过 UART 发送共享存储器中的记录数据。
    如果有一个 API 可以帮助完成这个过程、我很乐意了解它。 (DebugP 是候选函数、但不确定)

    此致
    卡迪尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的、这是我的流程。 所有4个内核将记录数据写入共享存储器、第五个内核(内核0-1)通过 UART 发送共享存储器中的记录数据。
    如果有一个 API 可以帮助完成这个过程、我很乐意了解它。 ([/报价]

    感谢您指定。