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.

[参考译文] TMS320F280039C-Q1:UART RXFIFO:接收到的 UART 大于 RXFIFO 大小。

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1285013/tms320f280039c-q1-uart-rxfifo-uart-received-is-more-than-rxfifo-size

器件型号:TMS320F280039C-Q1

大家好!

我正在使用 UART RXFIFO 中断从 ASIC 板接收数据。

ASIC 一次向 C2000 ware 控制器发送连续的20个字节、但控制器 UART RXFIFO 只有16个 RXFIFO。

您能否指导我如何使用 UART RXFIFO 中断接收所有数据。

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

    尊敬的 Rahul:

    感谢您的提问。 两个选项:

    1.将 RX FIFO 触发深度更改为4个字节、而不是16个字节。 这样、它将每4个字节中断一次、您可以将这4个字节移动到存储器中。

    2.将 RX FIFO 保持在触发深度16、然后等待另一个完整的16字节到达。

    第一个选项在您的情况下可能更简单。

    此致、

    文斯

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

    您好 Vince、

    感谢您的立即响应。  

    数据接收长度在2到53字节之间变化。  

    如何使用 RXFIFO (触发深度)来管理这种不同的接收长度?

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

    尊敬的 Rahul:

    我建议以最小数据长度为目标(2字节、甚至1字节)并将其用作触发深度。 这样、无论数据包有多小、您都将始终获得一个中断。

    此致、

    文斯

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

    您好 Vince、

    感谢您的建议。