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.

[参考译文] TMS320F28379D:与 ENC28J60连接的 TMS320F28379D 控制器会发出 SPI 通信问题。

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1019666/tms320f28379d-tms320f28379d-controller-interfacing-with-enc28j60-issue-spi-communication

器件型号:TMS320F28379D
Thread 中讨论的其他器件: SysConfig

尊敬的 TI 团队:

 我正在将 ENC28J60以太网模块与 TMS320F28379D 连接,但我们在 SPI 通信中遇到问题,我的 MOSI 引脚信号不正确,我在 DSO 上看到。 我已附上我的代码文件,请检查 SPI 通信问题并帮助我解决。

.e2e.ti.com/.../empty_5F00_sysconfig_5F00_337zwt.zip

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

    您好、Atul、

    [引用 userid="491206" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1019666/tms320f28379d-tms320f28379d-controller-interfacing-with-enc28j60-issue-spi-communication ]DSO 上的 MOSI 引脚信号不正确。[/quot]

    您能不能描述什么不适合该信号? 它是否以不同的波特率发送正确的数据? 它是否根本不发送数据? 数据是否与您期望的不符?  

    作为调试的第一步、我将启用内部回送、并查看您是否可以接收到正在传输的正确数据。

    此致、

    Marlyn

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

    大家好,Marlyn,

    根据时序图、我的 SPI 引脚信号不正确 。我的 SPI 配置  是否正确。

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

    您好、Atul、

    由于依赖关系、我无法打开您的项目、但我查看了各个文件。 SysConfig 文件与 board.c 文件具有不同的配置。 查看 board.c 文件、我发现了以下内容:

    void SPI_init()
    {
    	//mySPI0 initialization
    	SPI_disableModule(mySPI0_BASE);
    	SPI_setConfig(mySPI0_BASE, DEVICE_LSPCLK_FREQ, SPI_PROT_POL0PHA1,
    				  SPI_MODE_MASTER, 8000000, 	8);
    	SPI_enableFIFO(mySPI0_BASE);
    	SPI_setFIFOInterruptLevel(mySPI0_BASE, SPI_FIFO_TXEMPTY, SPI_FIFO_RXEMPTY);
    	SPI_disableLoopback(mySPI0_BASE);
    	SPI_setEmulationMode(mySPI0_BASE, SPI_EMULATION_STOP_AFTER_TRANSMIT);
    	SPI_enableModule(mySPI0_BASE);
    }

    在此过程中、您将配置 FIFO、但在 empty_sysconfig/main.c 文件中不使用 FIFO、因此如果是这样、我会禁用 FIFO。 您设置的配置适用于时钟相位为1的主器件、对应于以下时序图(来自数据表)。 这是您观察到的吗?

    最后、SysConfig 文件的 STE 极性为高电平有效、但根据上面的图、它看起来需要为低电平有效(正常)。

    此致、

    Marlyn

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

    大家好,Marlyn,

     我们在 Saleae 应用程序上进行了此更改,并使用逻辑分析仪进行了 SPI 测试。

    下面 是时序图。

    此 MISO 行为空。

    我需要遵循时序图。

      

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="491206" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1019666/tms320f28379d-tms320f28379d-controller-interfacing-with-enc28j60-issue-spi-communication/3771462 #3771462"]此 MISO 行为空。

    不是 MISO,MOSI 线路为零。

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

    您好、Atul、

    仅出于调试目的、如果启用回送、这是否适合您?

    此致、

    Marlyn