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.

[参考译文] 编译器/Hercules _SAFETY_MCU_DEMOS:TMS570LS3137 - Hercules - SPI2

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/877305/compiler-hercules_safety_mcu_demos-tms570ls3137---hercules---spi2

器件型号:Hercules _SAFETY_MCU_DEMOS

工具/软件:TI C/C++编译器

您好!

我被配置为 SPI1、SPI2、SPI3和 SPI4使用 Halcogen。 SPI1、SPI3和 SPI4工作良好、但 SPI2有一些问题。

当我使用 spiTransmitAndReceiveData (spiBASE-t * SPI、spiDAT1_t * dataconfi_t、uint32 blocksize、uint16 * srcbuff、uint16 * destbuff)时、 第一个字节传输失败:

SPI->IntFlg = 0x01000210 = BITERRFLG 为1。 我尝试一次使用一个 SPI、我尝试发送相同的消息。

可以帮帮我吗?  

P.s:此时、我在没有任何从器件的情况下使用 SPI2、我使用示波器查看信号。

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

    您好!

    您的测试中使用了哪个 TMS570LS3137封装? 144 PGE 封装没有 SPI2。

    BITERRFLG:SPIFLG 的第4位

    该位错误可能是位 速率过高、容性负载或另一个尝试同时发送的主/从器件。

    BUFINTACTIVE: 多缓冲 RAM 仍在初始化中。 由于 SPI2不支持多缓冲模式、该位应该被置位。

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

    您好、Wang、

    感谢您的回答、我的 uC 是 TMS570LS3137ZWT。 它具有 SPI2、没有设置多缓冲器。 频率为800kHz、我尝试使用300kHz、但错误相同。

    这是因为它连接到了不带 microSD 的模块吗?

    谢谢、

    Daniela

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

    Daniela、您好!  

    向未连接的 SPI 从器件传输数据不会导致任何问题。  

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

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

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

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

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

    您的配置没有任何问题。  

    我使用了相同的设置、但没有看到 biterr。 如数据表所述、BITERR 可能是由高比特率、电容负载或另一个主/从尝试同时传输引起的。