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.

[参考译文] TPL9202:设计电路和编程

Guru**** 2478765 points
Other Parts Discussed in Thread: TPL9202, TPL7407LA

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1509933/tpl9202-design-circuit-and-programming

部件号:TPL9202
主题中讨论的其他器件: TPL7407LA

工具/软件:

大家好。

我正在设计一个板、需要它来接通许多继电器、因此我使用 TPL9202来完成这项工作。

我在分线板上验证了单个 TPL9202上的伪电路、并按预期工作。

当我将电路放入 PCB 时、我添加了更多在 SPI CLK 和 MOSI 信号上并联的 TPL9202。 但是、使用与伪电路中相同的代码时、无法获得输出侧的电流阱。

下面是涉及 TPL9202的电路板简化电路。

在 RP Pi 侧、GPIO2定义为 CLK、GPIO3定义为 MOSI。 GPIO6和 GPIO8用作 CS、并将在稍后显示的代码中进行处理。

所有 OUTX 引脚都以如下所示的相同方式连接到其他继电器、为了简单起见、我在此不包括它们。

我使用 Raspberry Pi Pico 2作为 MCU、代码基于 Thonny MicroPython。

如下所示。

目的只是点亮一些继电器并查看电路是否正常工作。

根据这个代码、我预计 RELAY1会打开和关闭;但实际上并非如此。

from machine import Pin, SPI
from time import sleep,  sleep_us

u14 = Pin(5, Pin.OUT)
u14.value(1)

msg = bytearray()

# Initialize SPI
spi = SPI(0, baudrate=4000000, polarity=0, bits = 8, firstbit = SPI.MSB, phase=0, sck=Pin(2), mosi=Pin(3), miso=Pin(4))

while True:
    print(SPI(0))
    
    #sleep(10)

    print('Send out command')
    u14.value(0)
    sleep_us(1)
    spi.write(b'\x01')
    sleep_us(1)
    u14.value(1)
    print('Done send command')
    sleep(2)
    
    print('Send out command')
    u14.value(0)
    sleep_us(1)
    spi.write(b'\x02')
    sleep_us(1)
    u14.value(1)
    print('Done send command')
    sleep(2)

我已经探测了 CS、CLK 和 MOSI 引脚、所有波形对我来说都是正常的。 如果波形有用、我很乐意提供该波形的快照。

我还尝试了一些其他不起作用的事情、如下所述:

  1. 更改 TPL9202。 我已从分线板验证良好的单元、然后换用设计的 PCB、这样它将无法正常工作。
  2. 我已全部拆焊、但在 PCB 中留下了一个 TPL9202、以防 SPI 并联导致问题。 请勿工作。
  3. 请注意、分线板没有接地焊盘、我还尝试隔离 PCB 上的接地焊盘。 请勿工作
  4. 将代码更改为不同的波特率。 请勿工作。
  5. 将极性更改为1、相位更改为1。 请勿工作。
  6. 删除了 CS 引脚下拉后的延迟。 请勿工作。

*所提到的分线板看起来像下面的图片。

基本上、它与 PCB 电路连接相同、但没有接地焊盘连接和 VIN 处的去耦电容。

无论是电路方面还是编程方面、我觉得我做了一些错误的事情、但我无法理解如何操作。

有人可以帮助我吗?

感谢你能抽出时间。

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

    您好:

    对于此器件、我们可提供的支持水平将受到限制、但我的建议是确保子卡和您的 Raspberry PI 之间接地。 我还会确保 PHASE 和 SPI 模式正确。 您是否将相位更改为0、将极性更改为1、然后将相位更改为1、将极性更改为0? 这四种组合?

    此致、
    Tim  

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

    您好、Tim:

    感谢您的答复。

    是的、我尝试了所有4种不同的组合、但没有运气。 TPL9202和 RPi 的 GND 已连接、我想我在原理图中忽略了这一点。

    请问为什么此器件的支持有限? 是不是快到日落了?

    在这种情况下、您能向我推荐另一款能够更换芯片或至少具有类似功能的设备吗?

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

    该器件有点旧、我们没有 EVM、因此 我们拥有的资源有点有限、但我们目前没有任何计划来日落时分使用。  

    是否必须由 SPI 控制? TPL7407LA 或 ULN2003等器件是否可以在您的用例中工作?

    https://www.ti.com/product/TPL7407LA

    这些器件在工业中的生产量稍高、因此可能会更好  

    您应该能够将其与 SPI 扩展器配合使用、以并行放置多个器件。

    此致、
    Tim