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.

[参考译文] MSP430FR5994:3线制 SPI 不工作

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1445630/msp430fr5994-non-working-3-wire-spi

器件型号:MSP430FR5994
Thread 中讨论的其他器件: CCStudioMSP-EXP430FR5994

工具与软件:

您好!

我在我们的一个项目中使用 MSP430FR5994、除 SPI 总线外、原型板上的一切都运行良好。

我已经尝试编写自己的测试程序和使用一些官方 TI 示例、但无法使其正常工作。

事实是、无论使用我自己的代码还是使用 TI 代码、都无法使用任何 CLK 线路。 无论我是否启用"CLK 高电平无效模式"、CLK 都会保持低电平。 我是否传输数据也没有关系。
此外、在任何时候、只有4条 SIMO 线路中的一条线路会传输我要求它们传输的数据。 其他电压将保持低电平。

我还没有尝试与 SOMI 线路连接、因为 MSP 是主设备、我首先需要工作输出。

否则、MSP430将按预期工作、包括 UART 模式。 我将使用 Spy-by-Wire 通过 CCStudio 对其进行调试、并查看从调试端进行的传输、它们应该能够按预期工作。

我的代码和 TI 示例代码在 MSP430FR5994 LaunchPad 上生成相同的结果。



您可以找到用于连接随附的 SPI 的两个示例代码。

e2e.ti.com/.../CustomTest.zipe2e.ti.com/.../msp430fr599x_5F00_eusci_5F00_spi_5F00_standard_5F00_master.c

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

    您的连接使用 UCA0-2和 UCB2、但您发布的示例代码使用 UCB1、但 UCB1不是这些。 (我还没有查看.zip)

    根据哪一个更加简单、您可以(a)更改代码以使用(例如) UCB2或者(b)将您的其中一个 SPI 重新接线以使用 UCB1。

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

    啊、对这个错误进行抱歉。
    有时、我编辑了要与 MSP-EXP430FR5994 Launchpad 配合使用的.c 文件。 即 UCB1暴露。
    但是、我也无法在 UCB1上测量正确的 SPI。

    Zip 包含实际在我的原型板上运行的代码。

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

    您好、Manuel:

    我看到您提到、您可以在 launchpad 和您的原型板(包括您附带的.zip)上看到这些器件?

    如果您在 Launchpad 上运行我们的某个 SPI 示例、您会说您看到同样的问题?

    您可能需要查看我们的一些 USCI 勘误表、特别是 USCI45、USCI47和 USCI50、以查看是否有适用于您的用例的任何勘误表。

    我还想问、当您观察到器件中的错误行为时、器件是完全挂起、还是 SPI 不能正常工作并继续正常执行?

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

    我建议你在你载入 TXBUF 的代码行设定一个断点(也就是说、所有内容都已设置好)、然后通过 eUSCI 和 PSEL 寄存器来确保它们按照你想要的方式被设置。 我建议使用"Registers"视图、因为这会为您详细介绍位名称。