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.

[参考译文] CCS/TMS320F28069F:我对 SPI 通信代码有疑问。

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/735102/ccs-tms320f28069f-i-have-a-question-with-spi-communication-code

器件型号:TMS320F28069F

工具/软件:Code Composer Studio

您好!

我正在学习 28069DSP SPI 函数。

当我使用 Control-Suite Example_2806xSpi_FFDLB 运行时、它运行良好。 (for (;)中的 SPI 代码)

但是、我在 ADC_ISR 中执行此代码、代码在'while (SpiaRegs.SPIFFRX.bit.RXFFST!= 1){ ''停止 、位于以下代码中。


//发送数据
SPI_xmit (sdata);
//等待数据被接收
while (SpiaRegs.SPIFFRX.bit.RXFFST!=1){}
//检查已发送的数据

RDATA = SpiaRegs.SPIRXBUF;
//if (RDATA!= sdata) error();
sdata++;

我检查了 ADC_ISR 是否在没有 SPI 代码的情况下正常运行。

如何解决此问题?

谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您是否使用与 Example_2806xSpi_FFDLB 示例相同的 SPI 配置? 您是否在启用回送的情况下对其进行测试、或者您是否正在与其他设备通信?

    惠特尼
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的惠特尼:
    是的、我使用相同的 SPI 配置。
    而且、我不会与另一个器件通信并启用回送。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您在"Registers"窗口中检查 RXFFST 的值、该值是多少? 它是零吗? 还是>1?

    惠特尼
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您的调试是否有任何进展?

    惠特尼