主题中讨论的其他器件: HALCOGEN、 TMDX570LS31HDK
您好!
我是不熟悉 HDK、TMS570LS3137的人。 我一直在尝试与两个 SPI 通信、但我尚未完成。
我已经选择 SPI3来发送数据、而 SPI1作为接收器并在 HalCoGen 上完成一些设置。
为此、我从 PINMUX 中选择的引脚为:(src:tms570ls3137 (数据表)、第11页 ZWT BGA 封装球状引脚映射(337球栅阵列)
SPI3 SIMO W8 SPI1 SOMI G18
SPI3 SOMI V8 SPI1 SIMO F19
SPI3 CLCK V9. SPI1 CLCK F18
SPI3 CS1 V5 SPI1 CS1 F3
(但我在 PINMUX 中找不到要激活的多个引脚)
然后、从 MIBSPI1端口中、我为 SCS[1]引脚模式选择了 SPI 直通模式、并将其余部分设置为 GIO 直通模式。 我也对 MIBSPI3端口下的 SPI3执行了同样的操作。
对于全局配置、我选择 SPI3作为主模式(保持为默认值)、并取消勾选 SPI1的主模式。
我将其他设置保留为默认设置并生成代码。
我不使用其他器件、因此我只将 SPI3的 SOMI 引脚与 SPI1的 SIMO 引脚连接在一起、SPI1的 SOMI 引脚与 SPI3的 SIMO 引脚连接在一起、将 CS1连接在一起、并将 CLK 连接在一起。
在搜索此主题时、我找到了一些代码、然后复制并粘贴了这些代码。
UINT16 TX_Data[16]={0x01、0x02、0x03、0x04、0x05、 0x06、0x07、0x08、0x09、0x0A、 0x0B、0x0C、0x0D、0x0E、0x0F、 0x10};
UINT16 RX_Data[16]={0};
int main (空)
{
/*用户代码开始(3)*/
spiInit();
_enable_IRQ ();
spiDAT1_t 数据通信 fig1_t;
dataconfig1_t.CS_hold = false;
dataconfig1_t.WDEL = true;
dataconfig1_t.DFSEL = SPI_FMT_0;
dataconfig1_t.CSNR = 0xFD;
SendspiAndGetData (spiREG1、&dataconfig1_t、16、TX_Data、RX_Data);
TransmitAndReceiveData (spiREG3、&dataconfig1_t、16、TX_Data、RX_Data);
while (1);
}
在调试之后、我已经看到了我给出的 Tx_Data、但对于 Rx_Data 没有什么可看的。 全为零。 我还尝试了其他配置
例如、
SendspiData 和 spiGetData 或 spiTransmitData 和 spiReceiveData... 但无论如何、我无法相互通信。
可以帮助我查看问题吗? (我确信存在很多问题)。 我无法继续。
提前感谢、
斜角


