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/TMS570LS0232:有关 SPI 与示例芯片通信的一些问题

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/614545/ccs-tms570ls0232-some-questions-about-the-spi-commuication-with-a-sample-chip

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

工具/软件:Code Composer Studio

我最近尝试在 TMS570LS0232和示例芯片之间实现 SPI 通信。 我的目标是 TMS570LS0232发送读取命令、而采样芯片将返回相应的数据。 现在我有一些问题、希望能得到帮助。

由于采样芯 片的特性、我必须使用 SPI2的 SIMO 发送命令、使用 SPI3的 SIMO 从采样芯片获取数据。 因此、我想知道当我不需要使用 SPI2和 SPI3的 SOMI 时、应该如何完成它们在 HALCOGEN 中的配置。 我是否可以直接保留它们的默认配置?

命令的数据类型和样本信息是 uint8,但 HALCOGEN 在函数 spiTransmitData()中提供的数据类型 是 uint16。 我是否 可以使用任何方法来成功调用函数 spiTransmitData()以及 spiGetData()?

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

    您好!

    LS0232是配置中的 SPI 主设备。 LS0232 SPI 为采样芯片提供串行时钟。 写入移位寄存器的数据启动 SIMO 引脚上的数据传输、MSB 优先。 同时、接收到的数据通过 SPISOMI 引脚移入 SPIDAT0寄存器的 LSB。 发送和接收都使用相同的时钟。

    您可以 使用 SPI2或 SPI3与采样芯片之间发送和接收数据、但不能使用 SPI2与 TX 和 SPI3进行读取。

     CHARLEN[4:0]指定数据字中的位数(2至16)。 CHARLEN[4:0]值指示状态控制逻辑对接收或发送的位数进行计数、以确定何时传输一个完整的字。  当您调用 spiTransmitData()/spiGetData()或 spiTransmitAndReceiveData()时,您需要首先定义数据通信

     spiDAT1_t 数据通信 fig1_t;

     dataconfig1_t.CS_hold = false;
     dataconfig1_t.WDEL   = true;
     dataconfig1_t.DFSEL  = SPI_FMT_0; //选择 HALCoGen 中的8位
     dataconfig1_t.CSNR   = 0xFE;            //使用 CS0

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    非常感谢您的回复、我将根据您的建议进一步尝试。