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.

[参考译文] TMDSCNCD263:当 CDD UART 配置为轮询方式时、获取 Rx 超限错误

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1229675/tmdscncd263-getting-overrun-error-for-rx-when-cdd-uart-is-configured-in-polling-method

器件型号:TMDSCNCD263

HII、

目前、我在 项目中使用 MCAL_AM263x_08.06.02版本包。  

我将 Uart1配置为轮询模式115200波特率。  UART 传输按预期工作。  

对于 receive,我收到溢出错误.   超时计数器配置为20000。  要选择的超时值是基于什么?

如何解决此问题?

附加了代码片段、供您参考

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

    尊敬的 Palanikumar:

    此超时在开发过程中配置为一个已知值、结果为20000个周期。 它只是选择的值、用户可以根据应用的使用情况进行相应更改。  

    我已将票证转发给我们的 MCAL 软件团队、他们可以在遇到任何问题时为您提供更多帮助。

    谢谢

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

    尊敬的 

    感谢您试用该软件并恢复了解详细信息。

    我看到您的代码片段首先尝试使用 UART1实例发送缓冲区、然后 在轮询模式下等待读取字符、但 使用 的字长与  buffer_size 宏指定的相同(可能在发送和接收之间共享)。 请 确保 读取的字节数是否正确、还应确保串行终端配置参数、即波特率、奇偶校验、停止位、数据大小、 其余任意值与配置器插件中 UART 实例的配置集完全匹配。 通常、当配置与波特率不匹配时 、或者任何可能导致溢出的数据包参数都会在接收期间引发溢出错误、因为对该数据包的读取肯定会失败。

    对于超时值、需要根据系统时钟节拍持续时间进行相应设置、您可以为其使用合适的值、该值仅在轮询模式下在读取/写入 API 中内部用于数据传输。

    请确保是否正确设置了其余的可配置参数、如果问题仍然存在、请在下方进行注释。

    希望它有所帮助。

    谢谢。

    Harshit

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

    HII Harshit,

    我已验证串行终端和 EB 中的 UART 配置。  两者相同。

    我解决了问题。  实际问题是 在存根代码中,传输被触发,紧接着,转到接收状态. 因此会导致超限误差。

    修改存根代码、以便 在传输完成后的下一个周期调用接收状态、从而避免溢出错误。

    在 CDD UART 模块中、我们是否有任何接口来获取 Tx 和 Rx 完成状态?

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

    您好!

    很好的一点是、您能够通过修改存根来识别和解决它。

    此外、行46、51和54中使用的基于 Mcal_Cachep 的 API 适用于缓存一致性、并且仅对于 DMA 模式数据传输是必需的、因此对于轮询模式的应用、可以随意丢弃这些 API。

    在传输被触发后、进入接收状态之前、传输是否未完成(在传输完成的情况下、您应该能够完全看到写入终端上的启动消息)? 理想情况下,`Write ()` API 应在轮询模式下返回之前完成数据传输,如果出现偏差,请进行更新,让我们进一步检查。

    感谢分辨率的更新。

    -Harshit