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.

[参考译文] MSP430F247:最大 SPI 端口数

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/793406/msp430f247-maximum-number-of-spi-ports

器件型号:MSP430F247
主题中讨论的其他器件: MSP430FR5994MSP430F2012MSP430F2013MSP430FR2000MSP430I2041

您好!

我想使用 MSP430F247连接 SPI 总线 ADC。 问题在于这是一个四通道 ADC、每个通道都有自己的 SDO 输出- SDO1、SDO2、SDO3和 SDO4。 输出是同步的、所有输出都由单个时钟输入(SCK)运行。

从我看到的 MSP430F247具有多个 SPI 端口、但每个端口都有自己的时钟。

我的问题是、是否可以使用通用 I/O 引脚作为此应用的 SDI 输入? 换言之、我将使用 MSP430F247 CLK 输出作为 SPI 时钟、并将相应的 SDO 输入(SOMI)引脚用作 ADC 的 SDO 输出之一-然后、我能否将重命名 SDO 输出放置在通用 I/O (非专用 SOMI)引脚上、并让所有功能正常工作?

谢谢、

Tony

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Tony、
    执行您建议的操作应该起作用、但是它需要大量的位拆裂、并且您将无法根据 TI 的 SPI 驱动器的规格使用它们。
    我猜、我希望您的 ADC 能够在一条 SPI 总线上运行、并具有四个 ADC 的 SPI 从器件。

    您能否检查一下并告知我们?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Tom、

    我正在使用的 ADC (LTC2324-16)有4个 SDO 输出、它们同时具有数据。 无论如何、这就是我从时序图中看到的结果。

    不幸的是、我没有看到将所有数据(来自4个 ADC)仅放在其中一条输出总线上并将其读出为一个长串的选项。

    我也看不到一种有效地将所有输出连接在一起的方法、因为只有一个 CNV (转换)输入信号、它会一次性触发所有 ADC -然后它们都将数据放在单个总线上。

    因此、ADC 看起来是为了在4条不同的 SPI 总线上运行而设计的、但所有这些总线都具有相同的时钟。 哪一项是微不足道的、是的?

    想一下、我对他们的工作方式并不是很激动。

    你有什么建议吗?

    谢谢、
    Tony
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Tony、
    从查看 LTC 数据表的角度来看、该器件似乎具有某些功能、这表明该器件专为与专用 FPGA 配合使用而设计。
    除此之外、引脚说明中还有一条声明:
    SCK (引脚41):
    串行数据时钟输入。 下降沿
    将转换结果 MSB 首先移入时钟
    SDR 模式下的 SDO 引脚(DDR =低电平)。 在 DDR 模式下
    (
    SDR
    /DDR =高电平)这个时钟的每个边沿将移动
    转换结果 MSB 首先到达 SDO 引脚。 逻辑
    电平由 OV 确定
    DD

    SCK 是时钟输入、CLKOUT "只"响应时钟输入。
    CLKOUT (引脚33):
    串行数据时钟输出。 CLKOUT
    提供偏移匹配的时钟以锁存 SDO 输出
    (FPGA)处的数据。 逻辑电平由确定
    OV
    DD
    。 该引脚以较小的延迟回送 SCK 上的输入。

    因此、应该可以使用 MSP 的一个 SPI 通道来驱动 SCK 时钟输入、并将来自所有 ADC 通道的数据计时至 MSP430的4个 SPI 通道。 最简单的实现方式可能是将其中一个 SPI 通道用作 SPI 主通道、生成时钟信号、时钟输出数据、以及将主通道的时钟用作 ADC 等 CLK 输入、以从模式实现其他三种。

    但最后、我相信 TI 的 ADC 要比 LT 好得多。 请尝试与我们的同事联系、了解模拟产品。 非常感谢。

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

    是的、我认为该 ADC 专为 FPGA 接口而不是微控制器设计。

    返回到绘图板、查找可与 MSP430配合使用的(相当)高速 ADC。

    我一定要查看 TI 的选择.... 尽管我在数据转换器中没有看到“更好更好”的子类别-请添加它,这样我就可以直接去那里:)

    祝你一切顺利、

    Tony
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Tony、
    LTC 数据表表表表2. 显示了55MHz 和110MHz CLK。
    对于与上述频率发生位拆裂的情况、所有 MSP430都要缓慢运行。
    LTC2324-16 2Msps/Ch 吞吐率提供16Mbps 的数据流、对于具有 DMA 通道的 MSP430来说、这是非常大的。
    您选择的 MCU 需要3.3V 电压才能运行@ 16MHz。 电压转换芯片会影响 PCB 布局和 SPI 速度与可靠性。

    要使用 LTC2324-16最大速度、您至少需要 MSP432。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Tom、

    您完全正确地解决了2.5V 至3.3V 的问题、实际上我在数据线路上确实有一个快速电压转换器(当然是来自 TI 的)。

    但最后、我认为这只是一个坏的 ADC/微控制器匹配。 速度、不同级别、当然还有多端口问题。

    谢谢 Peter、让我们清楚地说明了这一点。

    祝你一切顺利、
    Tony
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Tony、
    关于 TI ADC 信息、主登录页面为 www.ti.com/.../overview.html
    一些器件示例
    www.ti.com/.../ads5263.pdf
    www.ti.com/.../ads8168.pdf
    www.ti.com/.../ads52j65.pdf

    另一方面、不确定您尝试实现的是什么以及您尝试实现的功能类型、但一种选择也可以是使用一个 MCU 作为主器件、如果确实需要4个通道、则使用4个具有集成 ADC 的小型 MSP 作为智能 ADC。

    这可能是一个包含 LEA 模块的 MSP430FR5994。 这基本上是一个能够以50MHz 的频率打败 Cortex M4的协处理器、提供 FFT 等功能、并使用 MSP430F2013 (16位 SD)、MSP430F2012 (10位 SAR)或 MSP430FR2000 (10位 SAR)等。

    此外、MSP430中集成了4个真正16位 SD 转换器的 MSP430i2041/2040也可能满足您的需求。 您可以节省与外部 ADC 进行串行通信的工作量。

    此致
    Peter