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.

[参考译文] TMS570LS1224:TMS570中的 MIBSPI 问题

Guru**** 2539500 points
Other Parts Discussed in Thread: HALCOGEN

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1018975/tms570ls1224-mibspi-issue-in-tms570

器件型号:TMS570LS1224
主题中讨论的其他器件:HALCOGEN

我在 HalCogen GUI 中配置了 MBSPI1、并使用 CCS 对 TMS570进行编程。 即使在 HalCogen 中配置时钟相位=1后 、时钟信号也不会被半个时钟周期延迟(正如您从示波器波形中看到的那样)。  

CPHA=1    CPOL=0

请告诉我为什么 TMS570未正确生成信号。  

代码:


/*用户代码开始(0)*/
/*用户代码结束*/

/*包含文件*/

#include "sys_common.h"

/*用户代码开始(1)*/
#include "mibspi.h"
/*用户代码结束*/

/**@fn void main (void)
*@应用程序主函数简介
*@请注意、默认情况下、此函数为空。
*
*此函数在启动后调用。
*用户可以使用此函数来实现应用程序。
*

/*用户代码开始(2)*/
/*用户代码结束*/

int main (空)

/*用户代码开始(3)*/
uint16_t txBuffer[]={0X6800、0X5600、0X0000};//
uint16_t rxBuffer[2];

mibspiInit();/*初始化 SPI */

// mibspiEnableLoopback (mibspiREG1、Digital_LBK);

mibspiSetData (mibspiREG1、0、txBuffer);

mibspiTransfer (mibspiREG1、0);

while (!(mibspiIsTransferComplete (mibspiREG1、0)))

mibspiGetData (mibspiREG1、0、rxBuffer);


while (1);
/*用户代码结束*/

返回0;

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

     如何在 Halcogen /CCS 中配置时序以设置 tsetSDI 和 tholSDI 以及 tfCK?  

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

    您好、Sakthi、

    CS 设置时间是可编程的。 时钟信号的上升和下降时间在数据表的输出时序部分中指定、并且它们不可编程。 数据输入的建立时间和保持时间在数据表中定义、不可编程。

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

    根据您发布的波形、SPI 时钟下降沿的数据输出(我假设通道为 SIMO)。 这意味着 PHASE=1。

    输出数据的第15位的值是多少?