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.

[参考译文] AWR2944EVM:更大限度地提高 UART 数据端口吞吐量

Guru**** 2893300 points

Other Parts Discussed in Thread: AWR2944EVM, SYSCONFIG

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

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/1635254/awr2944evm-maximize-uart-dataport-throughput

器件型号: AWR2944EVM
主题: SysConfig 中讨论的其他器件

TI 工程师大家好:

鉴于我的应用程序原因、我需要使用 UART 进行一些从 AWR2944EVM 板到主机的自定义数据传输。  

Currentley 我使用默认的数据端口波特率 3125000。 我在论坛上阅读过、XDS110 支持的最大值高达 6M https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/596785/ccs-what-is-the-maximum-xds110-uart-baud-rate 

因此、我尝试通过 MSS syscfg 将波特率增加到 468700 和 6250000。 我的低调 — 基于等量。 来自以下文件:c:\ti\mmwave_mcuplus_sdk_04_07_00_01\mcu_plus_sdk_awr294x_10_00_00_07\source\drivers\uart\v1\uart_sci.c  

regVal =((attrs->inputClkFreq +(8U * PRMs->baudrate))/(PRMs->baudrate * divisionFactor))- 1U;

是 4687500 的 badurate 是正确的一个去,因为它有一个干净的整数结果。

但是、这两个 Baudrates 都不会生效、因为我看到影响我的 UART TX 时间没有改变、这意味着在 mssgenerated 文件中看到了新的更高波特率增强。  

还可以将 UART 传输模式切换到 DMA 模式吗?

希望您能为我提供建议并指导、帮助我以某种方式加快 UART 数据传输速率。

此致、

标记

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

    您好、

    您对这个主题有什么建议吗?

    此致、

    标记

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

    您好、Mark、

    对延迟深表歉意。 您可以在星期一上收到回复。

    此致、
    Ananya K C  

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

    感谢您让我了解最新信息!

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

    您好、Mark、

    我从以下路径运行 SDK 示例:
    C:\ti\mmwave_mcuplus_sdk_04_07_01_04\mcu_plus_sdk_awr294x_10_01_00_04\examples\drivers\uart\uart_echo\awr294x-evm\r5fss0-0_nortos\ti-arm-clang

    将 UART 波特率修改为 3125000 后、我已按预期将 MSS_SCIA:SCIBAUD 寄存器更新为 0x2。

    当您遇到问题时、您能否检查并分享此寄存器的值?

    此外、您能否进入 uart_configInstance() 函数并在下面一行观察 regVal 计算:

    CSL_REG_WR (&pSCIRegs->SCIBAUD、regVal);

    此值源自 SysConfig 中配置的波特率。 这将有助于确认更新后的波特率是否正确传播到寄存器。

    此致、
    Ananya K C

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

    您好 Ananya、

    感谢您的回复、很抱歉我迟到了。

    我注意到您使用了另一个演示进行了测试、我使用的是 HECR 演示、您还将波特率设置为 3125000、HECR 演示默认使用该波特率。 我想尝试使用更高的波特率、我想问这是否可行。

    Nonethe less 我已经检查了注册如你所建议的,我这样做后编译与波特率设置为 4687500 — 因为正如我解释它似乎是 saftify 的等效. 此处引用。

    regVal =((attrs->inputClkFreq +(8U * PRMs->baudrate))/(PRMs->baudrate * divisionFactor))- 1U;

    。  

    MSS:SCIBAUD 寄存器的值为 0x50

    配置时讨论位置的 regVal 为 2。

    希望这对您有所帮助、

    此致

    标记

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

    您好:Mark、

    感谢您的答复。 让我   分别用 4687500 和 6250000 验证这一点。

    此致、
    Ananya K C

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

    有任何更新吗?

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

    您好、Mark、

    我以 4687500 的波特率运行 HECR 演示。 regval 设置为 1、MSS:SCIBAUD 也配置为 0x1。 通过该配置、Python 可视化工具能够成功显示有效数据点。 这似乎是 150MHz 时钟配置支持的最高波特率。

    当波特率增加到 6250000 时、该演示开始显示无效的 TLV 数据。 我已经在演示设置中验证了这种行为。

    此致、
    Ananya K C

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

    您好 Ananya、

    感谢您的确认。

    你怎么知道的?“侯龙涛一听就知道了。

    • 您是否只更改了 mss.syscfg 中的设置? 如果是、请查看具体设置、因为仅更新波特率后、它在我的本例中不起作用。

    此致、

    标记

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

    您好、Mark、

    这是 mss.syscfg 文件中的设置。  

    清理并重建工程。 在可视化工具中、我能够看到数据点。 我正在修改 UART1、该 UART1 将数据点进行流式传输。  

    此致、
    Ananya K C