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.

[参考译文] MSP430FR5989-EP:具有3个 MSP430的 MSP430FR5989-EP SPI 总线(1个主器件、2个4线从器件、使用 STE 作为从器件选择的输入)

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/922525/msp430fr5989-ep-msp430fr5989-ep-spi-bus-with-3-msp430-1-master-2-4wire-slaves-using-ste-as-input-for-slave-select

器件型号:MSP430FR5989-EP

问题是如何使用 MSP430 (MSP430FR5989-EP)的 SPI 总线、其中1个 MSP430作为主处理器、2个附加 MSP430作为从处理器。  总线由 1个 MSP430主器件(SCLK、MOSI、MISO、SS1和 SS2)组成、 从器件1 MSP430 (SCLK、MOSI、MISO、SS1)和从器件2 (SCLK、MOSI、MISO、SS2)。   在每个从 MSP430上、STE 引脚(P5.3/UCB1STE) 被用在输入模式中用于从器件选择(分别为 SS1或 SS2)。  因此主器件处于3线制模式、具有 GPIO 芯片选择(从器件选择)、从器件为4线制从器件模式、使用 STE 作为输入。

对于 4线制从 模式、如何知道 STE 引脚作为该特定 MSP430的输入工作正常?  

由于所有器件在总线上都是 MSP430、是否有最佳的 CKPH 和 CKPL (时钟相位和时钟极性)?  似乎只要他们都是同一个选择,就没有关系了?  尝试使用 CKPH = 0和 CKPL = 0。

从器件选择线路变为低电平与 MSP430 SPI 状态机 SCLK 应何时启动之间是否有最短时间(可能是 SCLK 周期)?  我们大约有5uS。  SCLK 当前为500kHz。

注:SPI 通信正常、但随后出现错误。   24°C 至25°C 的环境温度。  可以在温度室中以20°C 的环境温度运行系统、并且它可以无误运行数天。  对我来说、4C delta 温度听起来像是时序错误。

有什么想法?

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

    "
    从器件选择线路变为低电平与 MSP430 SPI 状态机 SCLK 应何时启动之间是否有最短时间(可能是 SCLK 周期)?  我们大约有5uS。  SCLK 当前为500kHz。

    "

    是的、根据数据表第56页的表5.20、该时间为40ns。

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

    什么类型的错误?

    MSP430上的 SPI 从站有困难、因为(a) MSP430不是很快、(b)没有流量控制。 借助500kHz 时钟和背靠背字节、从器件仅需16us 的响应时间。 (SCK 不是问题、而是背靠背问题。)  DMA 可以提供帮助、但它需要一定数量的科学。  

    首先要尝试的可能是降低 SPI 的速度-要么降低 SCK 的速度,要么通过在字节之间引入人工延迟来进行计量。

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

    您好、Carl、

    1.我不知道"如何知道 STE 引脚作为输入工作"是什么意思。  我想您可以等到从器件正在传输数据、并将 STE 引脚拉高以强制其停止。  

    STE 与标准 SS 信号不完全相同、但它可能适用于您的应用。  大多数应用最终将使用3线模式并手动监控 SS 引脚。  我认为 Jens 的这一描述非常好地解释了该信号的工作原理。   https://e2e.ti.com/support/microcontrollers/msp430/f/166/t/251036?SPI-STE-functionality-confusion- 

    2.我认为没有最好的情况、只需确保所有 MSP40都与您的情况相符。

    与#1相关、如果您最终手动中断此引脚、则应用程序将对此计时产生影响。  

    不知道为什么它在20C 而不是25C 下工作。  SPI 同步意味着微小的时序差异不应影响它。  您是否尝试过查看 LSA 的波形?  它可能与上述 STE 行为有关。  

    谢谢、

    JD   

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

    项目1.  它说一些 MSP430...  MSP430FR5989-EP 是其中之一吗?  MSP430的列表在哪里,它适用于...  这就是问题的起源。

    新项目。   问题已进一步缩小。  我们似乎可以通过一种奇怪的方式引发故障 SPI 故障、这意味着我不会进入。    故障的结果是在两个从器件上保留分页数据。   使用 FET 探针时、SCLK 的波形看起来不错。   因此、无需额外的时钟来移动代码 或 在时钟边沿上振铃。

    哪些因素会导致 SPI 状态机操作方面的位移剩余。

    典型工作波形...

       从器件1 STE 上的通道1 SCLK、通道2 MOSI、通道3 MISO、通道4 SS1 (低电平有效)

    重试中间的 SCLK 信号、以查看从器件是否已准备好响应。

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

    如何确定所需字节之间的最小和最大响应延迟?    每个 MSP430由 其自己 的16MHz 晶体振荡器供电。

    SCLK 为500kHz。   在4引脚受控模式下、寻找可能导致从器件左移位的时序、将 STE 引脚用作输入。

    当前字节间距至少为32uS。  

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

    现在将其脱机、但一旦找到分辨率、我将更新此线程。   

    谢谢、

    JD

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

    这个问题似乎是由 SPI 总线上的噪声和从器件与主器件不同步引起的。  添加一些电容并缩短 SS 低电平的时间似乎有助于解决该问题。   

    谢谢、

    JD