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.
工具/软件:Code Composer Studio
您好!
我在两个 F28377S 之间使用 SPI 通信。 当 我仅发送一个16位数据包时,没有任何问题。
但我将16位、4封装从一个 MCU 发送到另一个 MCU、如下所示:
for (Sdata_buff = 0;Sdata_buff <4;Sdata_buff ++)
{
SpiaRegs.SPITXBUF = sdata[Sdata_bux];
}
并从另一个读取、如下所示:
for (RDATA_buff = 0;RDATA_buff <4;RDATA_buff +)
{
RDATA[RDATA_缓冲 器]=SpiaRegs.SPIRXBUF;
}
因此、我从"SPI_loopback_interrupts_CPU1"示例中获取了这一点。
但我的问题是该数据的顺序。例如、数据由 MCU 1发送为:
sdata[0]= 10;
sdata[1]=11;
sdata[2]=12;
sdata[3]=13;
第二个读为 AS
RDATA[0]= 13;
RDATA[1]=11;
RDATA[2]=12;
RDATA[3]=10;
或
RDATA[0]= 11;
RDATA[1]=10;
RDATA[2]=12;
RDATA[3]=13;
或
(笑声)
我是说读取序列与发送序列不同...
我应该如何将数据作为正确的序列?
感谢你的帮助。
您好!
您是否尝试探测 SPI 线路? 您是否看到数据按正确的顺序发送?
您是否还更新了示例中使用的 FIFO 大小?
此致、
Veena
我已经探测并看到数据、但没有检查它们的顺序。
"更新 FIFO 大小"是什么意思?"在哪里?
您好!
如需更多信息、请参阅 C2000ware 中提供的 SPI FIFO 示例。
此致、
Veena