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/MSP430F5259:UART_WRITE ()执行-性能不一致

Guru**** 2553420 points
Other Parts Discussed in Thread: CC2650

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/593253/rtos-msp430f5259-uart_write-execution---inconsistent-performance

器件型号:MSP430F5259
Thread 中讨论的其他器件:CC2650

工具/软件:TI-RTOS

您好!  

在我的应用中、我使用2个 MCU -主 MSP430和辅助 CC2650进行通信。 MSP430通过 UART 通道将消息推送到 CC2650 (发送到 SPP_BLE_server)

"应用程序级 消息"分为3个子消息"、由报头、报文正文和报文组成、所有3个子消息均使用 UART_write() API (以阻塞模式运行)发送。

现在、我经历了一个奇怪的现象-  

一个任务开始在信标/邮箱上运行、并且需要从主 MCU 发送 N 条消息(请记住、通过软件的较低级别的级别、每条消息被进一步细分为3个子消息)。

第一条消息(3个子消息)发送比较后续(N-1)消息需要很长时间、感觉 UART 需要唤醒和重新初始化或第一条消息上的某个内容。

我已经对所有潜在的锁定机制/ gateMutexes 等进行了注释、但我对第一条消息的响应一直非常慢(无论消息长度如何)

我在实现 SystemAnalyzer (系统挂起在 Memory_alloc()调用上)方面遇到困难,因此目前无法获得更精细的分辨率。

这种泥石反应的原因可能是什么?

任何注释 IIS 都是赞赏的。

谢谢

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

    "极慢的响应"有多长时间? 您是否在应用中使用了任何低功耗模式? 您还使用什么时钟来为 UART 供电?

    此致、
    Caleb Overbay
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    它相当于其他呼叫的10倍(或更长)。

    但是、我发现了一个处理 SD 卡的优先任务的原因、该任务需要很长时间才能完成(充分利用 MCU)。
    任务优先级调整解决了问题。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    很高兴听到您能够解决此问题!

    此致、
    Caleb Overbay