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.

[参考译文] BQ78350-R1:如何通过 SMBus 在两个主器件之间传输信息?

Guru**** 2416110 points
Other Parts Discussed in Thread: BQ78350-R1, BQ76920, BQ78350

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/659849/bq78350-r1-how-can-i-transfer-informations-between-two-masters-via-smbus

器件型号:BQ78350-R1
主题中讨论的其他器件: BQ76920BQ78350

你好

我正在使用 bq78350-R1、它已经是 smbus 中的主设备。 我想通过 SMBus 将信息从 bq78350-R1传输到另一个微控制器。

但我认为微控制器也是主器件。

我该怎么做?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Paul:
    bq78350-R1 SMBus 通常由主机器件或 MCU 等主器件读取。 研究其外设的 MCU 规格以及总线协商工作原理的 SMBus 标准。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    参考第12页的 BQ78350-R1数据表、BQ78350-R1充当 SMBus 上的从器件。

    因此、我可以将另一个微控制器作为主器件连接到 SMBus。

    在此配置中、我可以将 bq78350-R1的信息传输到微控制器。

    但 BQ78350-R1是 BQ76920的主机器件。

    是这样吗? 这是否起作用?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Paul:
    是的
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    但该器件还能够通过 SMBus 将充电算法配置到另一个充电 IC。
    因此、芯片也可以用作主器件、因为它可以控制充电 IC、对吧?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Paul:

    是的、bq78350具有可用的广播模式。  它成为要广播的主设备。  请参阅技术参考手册中的简要说明。  另请参见 SMBus 规范和 SBS 规范。  您可能希望 bq78350-R1 产品文件夹的技术文档选项卡中提供 SMBus Made Simple 应用手册的第1.2.2节。

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

    我在"SMBus Made Simple"中看到、它可以发送警报以及充电电压和充电电流。 温度、电池电压等其他信息如何? 这种信息是否也可以通过 SMBus 发送到另一个微控制器?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Paul:
    阅读 bq78350-R1技术参考手册。 充电信息可以广播、大多数信息必须由外部主机读取。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的、我在第114页的技术参考文档中看到有一些命令、这些命令可以为我提供有关测量电压、电流和温度的信息。 这些命令被称为:ManufacturerAcess() 0x0059 AFEConfig 和 MancuturerAccess() 0x005A AFCx

    我想更详细地了解该流程是如何获取信息的、我需要:

    Q0:因此我可以从微控制器(主器件)访问这些命令、该微控制器通过 smbus 连接到 BQ78350-R1。  如果是、我想我需要一个库、在这里声明了这些命令、对吧? 在哪里可以找到库? 很明显、否则我会遇到错误、因为编译器不知道 SBS 命令的作用是什么。

    Q1:通过执行这些命令、测得的信息将从 BQ78350-R1发送到微控制器(例如发送到 MSP430微控制器)
    这些信息将只从 bq78350-R1广播、当微控制器通过命令请求信息时、对吧?
    在本例中、BQ78350-R1是该总线上的从器件。

    问题2:参考第5页上的 SMBus 文档、可以避免广播。 这意味着 bq78350-R1不应广播有关充电电压和充电电流的信息、因为在广播期间、bq78350-R1成为 smbus 中的主器件、这种情况并不好、因为可能会发生与微控制器(通常是主器件)的主器件冲突、对吧?  

    Q3:因此、最好的方法是从 BQ78350-R1禁用广播模式。 并从微控制器(主器件)执行命令以获取所需的信息。

    我不会遇到冲突、并且我会有一个稳定的总线配置:微控制器始终是 smbus 的主器件、bq78350-R1始终是 smbus 的从器件、对吧?

    感谢您明确说明这一点

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    嗯、好的。
    该库呢?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Paul:
    请咨询您的 MCU 供应商