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.

[参考译文] TMS320F28062:FIFO 中断

Guru**** 2538930 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/638412/tms320f28062-fifo-interrupt

器件型号:TMS320F28062

您好,

在 SPI 的 FIFO 接收器中断中使用1M 波特率来填充 FIFO 发送的数据是否可靠? 使用4级 FIFO 收发器数据。

我测量的 FIFO 中断时间耗时为3微秒、1M 波特率为1微秒时钟、前2微秒中是否缺少时钟会导致发送错误数据?

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

    我不确定我是否理解您的问题。 您是否测量了为 RXFIFO ISR 提供服务所花费的总时间? 您担心 SPI FIFO 无法跟上步伐? 如果是、请阅读下面的说明。

    简而言之、是的、SPI FIFO 在保持1MHz 波特率时不会出现问题。 如果配置正确、RX FIFO 将在接收到4个字后触发中断。 它不会在每个时钟周期中断。

    为了获得更长的答案、我将在这里做出一些假设。 如果我错了、请纠正我的问题。 无论选择何种值、该概念都有望明确说明问题。

    SPI- 1MHz 时钟速率
    RXFIFO 中断级别- 4个字(最大值)
    SPI 字长- 16位

    假设正在传输连续数据(16位字之间无中断)、则以下时序为真:
    - 1MHz 时钟速率为1us 周期时间或每位1us
    - 4 x 16位字= 64位
    -填充 FIFO 的总时间为64us

    如果您将 RX FIFO ISR 的持续时间测量为3us、则有足够的时间以1MHz 的频率处理饱和 SPI 总线、前提是系统的其余部分允许每64us 块处理3us 的 SPI。

    谢谢、
    标记