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.

[参考译文] TPS92520EVM-133:通过 SPI 控制和调节 TPS92520-Q1

Guru**** 2663155 points

Other Parts Discussed in Thread: TPS92520-Q1, TPS92520EVM-133

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1591855/tps92520evm-133-control-and-adjust-tps92520-q1-via-spi

器件型号: TPS92520EVM-133
主题中讨论的其他器件: TPS92520-Q1

您好专家、

我正在执行一个项目、在未连接 ECU 的情况下为车外的前照灯供电并进行控制、从而简化功能测试和开发。 为了实现这一点、我希望对 LED 通道使用 TPS92520-Q1、以使整体可控性更简单、因为前照灯的 ECU 中也使用了这些降压转换器。

现在、我正在使用 TPS92520EVM-133 来正确测试我的代码和功能、然后再访问整个 ECU。 通过 SPI、我正在尝试通过 python 和 SpiDev 库在我的 Raspberry Pi 5 和评估板上的 TPS92520-Q1 之间建立连接。 我将一个 LED 条连接到两个通道中的每一个、并且在连接到电源时它们会亮起。 当 LHI 接地时、LED 条不会亮起、如数据表中所述。 如果我回答正确、那么我应该下拉 LHI 以与 Raspberry 建立连接并控制转换器、因为它没有以这种方式进入独立模式?

由于我的电源同时为转换器和 Raspberry 供电、因此当转换器的看门狗计时器在 1.67 秒后超时、Raspberry 仍会启动。 如果我再次正确阅读了数据表、我必须将转换器复位为负载模式、以便在准备就绪时实现连接?

我将在以下内容中展示从 RESET 到通道激活的所有 SPI 命令:

  • 将转换器复位至负载模式:spi.xfer2 ([0xDD、0xD4])
  • 等待 0.001 秒
  • 读取 STATUS3 寄存器中的 PC 位:spi.xfer2 ([0x05、0x00])

此后、SPI 总线上应该有活动、以免看门狗再次超时。 我正在使用将 IADJ 和 PWM 调整为所需的值来实现此目的。

  • 计算 IADJ:IADJ =(I*1024*14*0.1)/2.45
  • 地址(具有写入属性):CH1_IADJH = 1001001、CH1_IADJL = 1001000、CH2_IADJH = 1001011、CH2_IADJL = 1001010
  • 在 MSB 和 LSB 中分离 IADJ 并将其连接到相关地址
  • 相应地添加奇偶校验位
  • 计算 PWM:PWM =(PWM(百分比)*1023)/100
  • 地址(使用写入属性):CH1_PWMH = 1001110、CH1_PWML = 1001101、CH2_PWMH = 1001000、CH2_PWML = 1001111
  • 在 MSB 和 LSB 中分离 PWM 并将其连接到相关地址
  • 相应地添加奇偶校验位
  • 安全更改:spi.xfer2 ([0x81、0x0A])

现在、在切换通道之前、我正在等待控制接口上的进一步输入。 在我的理解下、看门狗计时器已被禁用、所以等待时应该没有问题?

 

要激活通道、将执行以下事务:

  • CH1 开启、通道已开启:spi.xfer2 ([0x80、0x05])
  • CH1 开启、通道 2 仍关闭:spi.xfer2 ([0x80、0x01])
  • CH2 开启、CH1 已开启:spi.xfer2 ([0x80、0x05])
  • CH2 开启、CH1 仍然关闭:spi.xfer2 ([0x80、0x04)]

 

要停用信道、将执行以下事务:

  • CH1 关闭、CH2 仍开启:spi.xfer2 ([0x80、0x04])
  • CH1 关闭、CH2 已关闭:spi.xfer2 ([0x81、0x00])
  • CH2 关闭、CH1 仍然开启:spi.xfer2 ([0x80、0x01])
  • CH2 关闭、CH1 已关闭:spi.xfer2 ([0x81、0x00])

 

据我了解、这一切都遵循数据表中的法规、您能告诉我我朝哪个方向的方向有误吗? 所有 SPI 消息都是正确的、并且我已在示波器上检查所有这些消息时提交。 我真的非常感谢您的帮助!

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

    尊敬的 Lukas:

    负责支持此设备的工程师本周将在感恩节假期。 他将在 12 月 1 日返回星期一时回答您的问题。

    谢谢、

    Jaron

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

    您好 Lukas、

    当器件处于独立模式时、我将 0xC3 写入 RESET 寄存器(地址:0x2E)。   然后立即通过读取 STATUS3(地址:0x05)来清除 PC 位。  我通常也关闭看门狗计时器 (CMWEN、SYSCFG1 寄存器(地址 0x00)的位 4)。  然后、当您尝试器件的不同设置时、我可以进行测试、而无需担心进入跛行回家模式或独立模式。  一旦我有了您喜欢的设置、然后启用看门狗计时器位、这样如果用户通信丢失、您就会进入跛行回家模式。   

    -fhoude

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

    您好 Fhoude、

    我也尝试了这个消息,但仍然没有任何变化。 我是否可能处于独立模式、无法摆脱它? 在任何时候似乎都没有遵守我的 SPI 消息。 当 LHI 引脚连接到 GND 时、LED 熄灭。 当 LHI 引脚悬空时、LED 亮起。 当已激活独立模式时、如何退出独立模式? 此外、是否可以将 LHI 连接到 GND 并且仍然复位转换器以通过 SPI 对其进行控制、从而使 LED 在需要时亮起?

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

    您好 Lukas、

    您应该通过写入 RESET 寄存器来退出独立模式。  只要在计时器到期之前关闭看门狗计时器、就应该能够保持退出独立模式。  如果您读取 STATUS3(地址 0x05)、则可以确定您是否处于独立模式(寄存器的第 7 位)。 我认为、即使在独立模式下、也始终可以读取器件。  是否确定您未处于跛行回家模式?  跛行回家模式可以使用 LHI 引脚设置输出电流、也可以使用跛行回家模式寄存器。  读取 LHCFG1 寄存器(地址 0x1E)以查看是否设置了 LHEXTIADJ 位。  您是否有我可以查看的 SPI 事务记录?  如果你有一个 Saleae 捕获会很好。  或其他逻辑分析仪捕获结果供我查看。

    -fhoude