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.

[参考译文] UCD90320:需要使用 Raspberry Pi 上的 I2C 在 UCD90320上打开和关闭电源轨

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1014064/ucd90320-need-to-turn-rail-on-and-off-on-ucd90320-using-i2c-on-raspberry-pi

器件型号:UCD90320

您好!

我正在尝试使用 Raspberry Pi 上的 I2C 打开和关闭 UCD90320上的电源轨。 我想知道是否可以这样做、如果可以、使用 I2C/PMBus 与 UCD 进行通信的命令格式是什么。  

有人能向正确的方向指出我吗?

谢谢

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

    你(们)好  

    是的、您可以使用 PMBus 命令逐个开启电源轨。  

    对于每个目标电源轨、请执行以下步骤

    1. 使用正确的索引(0->rail1、1->rail2发送 page_command( write byte command)。 (笑声) 一个)来选择目标电源轨

    2. 发送 ON_OFF_CONIG (写入字节 c 命令)、并设置位4和位3。 这是为了允许电源轨由操作命令控制。 请参阅第12.2节 https://470q2hhkn9g15l4bc2btbal1-wpengine.netdna-ssl.com/wp-content/uploads/2021/05/PMBus-Specification-Rev-1-2-Part-II-20100906.pdf 

    3.发出操作(写入字节命令)以打开或关闭电源轨。 请参阅 https://470q2hhkn9g15l4bc2btbal1-wpengine.netdna-ssl.com/wp-content/uploads/2021/05/PMBus-Specification-Rev-1-2-Part-II-20100906.pdf 的第12.1节 

    此致

    Yihe

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

    谢谢!

    我假设握手协议和寻址与 I2C 协议相同、

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

    你(们)好

    您可以参阅 http://smbus.org/specs/smbus20.pdf 的第5.5节 、了解 基于 I2C 协议的 SMBus/PMBus 协议。  

    此致

    Yihe  

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

    您在#1中引用的 page_command、   是 PMBus 规范文档第11.14节中描述的 page_plus_write 命令吗?  

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

    你(们)好

    它是 PMBus 规范的第11.10节 PAGE 命令(命令代码0x0)

    此致

    Yihe

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

    感谢您的回答、但我仍然对 Page Command 感到困惑。 第11.10节没有多说。 我看不到任何示例或我需要为 PAGE 命令设置的位。我应该参阅第11.14和11.15节。 如果是,那么我如何知道这些部分(PG 52)所示示示例中的参数? page_plus 命令代码、页码、命令代码使用什么?

    您是否有任何通过 I2C 与 UCD 通信的示例代码? 这将真的有帮助。

    在我的系统中、默认情况下所有电源轨都处于开启状态、为了实现测试自动化、我希望一次关闭一个电源轨。 请提供任何帮助。 这是我与 UCD90320进行通信的示例代码。

    import smbus
    import sys
    import time
    
    Channel = 1
    I2C = smbus.SMBus(Channel)
    Address = 0x68
    
    ##################################################################################
    def I2C_Write(PAGE_COMMAND, ON_OFF_CONFIG, OPERATION_OFF):
        I2C.write_i2c_block_data(Address, PAGE_COMMAND, ON_OFF_CONFIG, OPERATION_OFF)
    
    
    ##################################################################################
    
    ON_OFF_CONFIG = 0b00001011
    OPERATION_ON = 0b10000000  #ON
    OPERATION_OFF = 0b00000000  #OFF
    PAGE_COMMAND = ??
    
    I2C_Write(PAGE_COMMAND, ON_OFF_CONFIG, OPERATION_OFF)

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

    你好

    您可以参阅 https://www.ti.com/lit/ug/slvuaw9c/slvuaw9c.pdf 的 v6.1部分

    请注意、表3中有一个拼写错误、UCD90320上的最大电源轨数为32、而不是24。  

    PAGE 命令是一个写入字节命令、例如、如果您要选择第4个轨、命令代码为0x00。 您必须 通过 i2c 软件发送以下内容

    0x65 (地址)+ 0x00 (命令代码)+ 0x03 (选择第4轨的索引)。

    此外、  

    ON_OFF_CONFIG = 0b00001011这似乎不正确。 您必须使用 OPERATION 而不是 CONTROL PIN、它需要设置为0b00011000。

    PAGE、ON_OFF_CONFIG、OPERATION 是三个单独的命令、您必须按照原始答复中所述的顺序逐个发送这三个命令。

    请 参阅 http://smbus.org/specs/smbus20.pdf 的第5.5节 、了解 SMBus/PMBus 协议。

    此致

    Yihe

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

    你(们)好

    您可以参阅以下内容、使用 PAGE、ON_OFF_CONFIG 和 OPERATION 来开启和关闭电源轨#5。

    地址 CMD ID CMD_Code 相位 值编码 value_text
    101.        页面        0x00    写入 0x04         电源轨#5/页0x04
    101.        ON_OFF_CONFIG 0x02    写入 0x18         模式:仅运行
    101.        操作    0x01    写入 0x80         单位:开;边距:无
    101.        操作    0x01    写入 0x00         单位:ImmedateOff;边距:无

    此致

    Yihe

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

    非常感谢! 现在它正在工作!

    我还有一个问题、 UCD 的 ADC 感测到的电源轨是否有读取电压、电流和温度的方法?

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

    你(们)好

    是的、请参阅本应用手册的第4节: https://www.ti.com/lit/pdf/slva385 

    此致

    Yihe

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

    感谢您的指导、我能够读取所有电源轨的电压和电流。

    至于温度读数、有3个温度读数命令(0x8D、0x8E、0x8F)、我不确定哪一个是 UCD90320的正确命令。 此外 、我在 下面的文档表3中看不到 UCD90320的列。 如何知道哪个命令适用于 UCD90320? 是否有此文档的更新版本?

    是否还有任何命令可查看所有电源轨的故障状态?

    https://www.ti.com/lit/ug/slvu352g/slvu352g.pdf?ts=1624403325041&ref_url=https%253A%252F%252Fwww.google.com%252F

    另一个问题是我正在尝试使用表3中列出的命令从 UCD 读取 MFN ID、MFL_MODEL 等。 但是、我得到了一个大数字、我不确定如何理解它。 它似乎也会在现在和之后发生变化、例如下面的 MFN 位置。

    MFN_ID:19718
    MFN_型号:19721
    MFN_修订版:19724
    MFN_位置:19724
    MFN_日期:22790
    MFN_串行:22790

    MFN_ID:19718
    MFN_型号:19721
    MFN_修订版:19724
    MFN_位置:19852.
    MFN_日期:22790
    MFN_串行:22790

    MFN_ID:19718
    MFN_型号:19721
    MFN_修订版:19724
    MFN_位置:19724
    MFN_日期:22918
    MFN_串行:22790

    用于轮询的代码:

    MFN_ID = 0x99
    MFN_MODEL = 0x9A
    MFN_REVISION = 0x9B
    MFN_LOCATION = 0x9C
    MFN_DATE = 0x9D
    MFN_SERIAL = 0x9D
    
    MFN_ID_get = I2C.read_word_data(ADDRESS, MFN_ID)
    print("MFN_ID: {}".format(MFN_ID_get))
    
    MFN_MODEL_get = I2C.read_word_data(ADDRESS, MFN_MODEL)
    print("MFN_MODEL: {}".format(MFN_MODEL_get))
    
    MFN_REVISION_get = I2C.read_word_data(ADDRESS, MFN_REVISION)
    print("MFN_REVISION: {}".format(MFN_REVISION_get))
    
    MFN_LOCATION_get = I2C.read_word_data(ADDRESS, MFN_LOCATION)
    print("MFN_LOCATION: {}".format(MFN_LOCATION_get))
    
    MFN_DATE_get = I2C.read_word_data(ADDRESS, MFN_DATE)
    print("MFN_DATE: {}".format(MFN_DATE_get))
    
    MFN_SERIAL_get = I2C.read_word_data(ADDRESS, MFN_SERIAL)
    print("MFN_SERIAL: {}".format(MFN_SERIAL_get))

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

    你(们)好

    UCD90320具有其自己的文档 https://www.ti.com/lit/ug/slvuaw9c/slvuaw9c.pdf 

    这些数字由客户编程。 您是否对它们进行了编程?

    此致

    Yihe  

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

    是的、我按如下方式对其进行编程:  

    https://drive.google.com/file/d/14g_p3WxabDeY-Unr7OWU0PEArksrvX6o/view?usp=sharing

    是否还有任何命令可查看所有电源轨的故障状态?

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

    你(们)好

    这些 MFR_XX 是块读取命令。 您必须确保您的软件支持这些功能。 请参阅前一答复中发布的 SMBus 协议以确保这些协议。

    请参阅上一次答复中发布的 PMBus 规范、了解 STATUS_VOUT 及其 读取方法。

    请参阅之前发布的 UCD90320 PMBus 命令参考指南、了解如何读取 MFR_STATUS。

    此致

    Yihe

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

    感谢您指引我正确的方向。 我能够读取 STATUS_VOUT、STATUS_IOUT 和 STATUS_BYTE

    最后一个问题是、当我读取 输出电压、输出电流或温度状态字节时、有时即使没有故障、我也会设置随机故障。

    在下面的示例中、您可以看到在第一个通道上设置了 STATUS_VOUT 和 STATUS_IOUT 的最左侧位、然后在 第二个通道中消失。 此外、它是随机的、有时它显示故障、有时它不显示故障。 请提供建议。

    输出:

    Measuring: VCC5
    Voltage/Current/Temp: 5.135 / 0.002 / 36.812
    *** VOUT_OV_FAULT
    *** IOUT_OC_FAULT
    STATUS_VOUT: 10000000
    STATUS_IOUT: 10000000
    STATUS_TEMP: 0
    Vout_status/Iout_status/Temp_status: NOT OK / NOT OK / OK
    
    Measuring: VCC5
    Voltage/Current/Temp: 5.137 / 0.000 / 36.812
    STATUS_VOUT: 0
    STATUS_IOUT: 0
    STATUS_TEMP: 0
    Vout_status/Iout_status/Temp_status: OK / OK / OK

    Python 代码:

    STATUS_VOUT = 0x7A
    STATUS_IOUT = 0x7B
    STATUS_TEMPERATURE = 0x7D
    
    def faults():
        STATUS_VOUT_get = I2C.read_byte_data(ADDRESS, STATUS_VOUT)
        if STATUS_VOUT_get != 0:
            Vout_status = "NOT OK"
            if STATUS_VOUT_get >> 7 & 1:
                print("*** VOUT_OV_FAULT")
            if STATUS_VOUT_get >> 6 & 1:
                print("*** VOUT_OV_WARNING")
            if STATUS_VOUT_get >> 5 & 1:
                print("*** VOUT_UV_WARNING")
            if STATUS_VOUT_get >> 4 & 1:
                print("*** VOUT_UV_FAULT")
        else:
            Vout_status = "OK"
            
        print("STATUS_VOUT: {0:b}".format(STATUS_VOUT_get))
        
        ..... and so on for Iout and Temperature
        
        return Vout_status, Iout_status, Temp_status
        
    #Main
    
    Vout_status, Iout_status, Temp_status = faults()   
    print("Vout_status/Iout_status/Temp_status: {} / {} / {}".format(Vout_status, Iout_status, Temp_status))

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

    你(们)好

    在这些状态命令之前、您是否发送了 PAGE 命令来选择电源轨? 您是否同时运行 Fusion GUI?

    此致

    Yihe

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

    是的、在查询状态之前、我有一个 PAGE 命令。 我尝试在上面的代码中编辑和添加页面命令、但看起来它不接受我的编辑。 但是、 无论如何、代码前面有一个 PAGE 命令。

    I2C.WRITE_BYTE_DATA (地址、PAGE_COMMAND、电源轨) 
    时间睡眠(0.1)

    没有 TI Fusion GUI 不会同时运行。

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

    你(们)好

    每个命令之间的间隔是多少? 您是否有波形来显示它?

    此致

    Yihe  

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

    我没有波形、但我尝试添加不同的延迟命令(10us 至500ms)、它仍然显示类似的行为。

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

    你(们)好

    您是否有其他 I2C 主机同时访问 UCD? 我建议您读回 PAGE 命令、以确保您访问了正确的电源轨。 此外、波形可以判断是否存在任何信号完整性问题。  

    您还可以使用 GUI 的低级 SMBus& I2C 工具测试。 请观看以下视频

    https://training.ti.com/fusion-power-designer-low-level-i2c-smbus-debugger?context=1136655-1139495-1136567 

    此致

    Yihe

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

    不、我没有任何其他 I2C 主机连接到 UCD。 我也尝试读回页面、页面设置正确。

    GUI 的低级 SMBus I2C 显示无故障。 不确定为什么 Raspberry Pi 偶尔在第7位上读取错误。

    我目前无法使用示波器来查看波形(在家工作)。

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

    你(们)好

    您是否尝试使用低级 SMBus I2C 工具来运行相同的测试?  

    此致

    Yihe

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

    是的、我尝试使用 低级 SMBus I2C 工具、它在 Status_Vout、STATUS_Iout 或 STATUS_Temperature 中未显示故障。

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

    你(们)好

    主机和 UCD 之间似乎存在一些信号完整性。 波形肯定会有所帮助。 您的 SCL/SDA 上拉电阻是多少?

    此致

    Yihe

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

    我终于拿到了 I2C 分析仪(Picoscope)。 我看不到波形会带来失真或任何东西、它们对我来说很好。 请参见下面的最后一张图片。

    我在读取电压、电流或温度时没有看到错误。 我可以从 UCD 读取正确的数据。

    问题在于读取 Vout_Status Iout_status 和 Page 命令时。  似乎 MSB 在某种程度上设置为每几次传输1次。 我没有看到 Picoscope 波形上设置了这些 MSB。

    例如、这里是我必须读取状态的代码:

    def faults(rail):
        print("Page set to:", rail)
        I2C.write_byte_data(ADDRESS, PAGE_COMMAND, rail)
        time.sleep(0.5)
        PAGE = I2C.read_byte_data(ADDRESS, PAGE_COMMAND)
        print("Page read back: ", PAGE)
        time.sleep(0.5)
        
            # Vout Status
        STATUS_VOUT_get = I2C.read_byte_data(ADDRESS, STATUS_VOUT)
        if STATUS_VOUT_get != 0:
            Vout_status = "NOT OK"
            if STATUS_VOUT_get >> 7 & 1:
                print("*** VOUT_OV_FAULT")
            if STATUS_VOUT_get >> 6 & 1:
                print("*** VOUT_OV_WARNING")
            if STATUS_VOUT_get >> 5 & 1:
                print("*** VOUT_UV_WARNING")
            if STATUS_VOUT_get >> 4 & 1:
                print("*** VOUT_UV_FAULT")
        else:
            Vout_status = "OK"
    
        time.sleep(0.5)
    
        # Iout Status
        STATUS_IOUT_get = I2C.read_byte_data(ADDRESS, STATUS_IOUT)
        if STATUS_IOUT_get != 0:
            Iout_status = "NOT OK"
            if STATUS_IOUT_get >> 7 & 1:
                print("*** IOUT_OC_FAULT")
            if STATUS_IOUT_get >> 6 & 1:
                print("*** IOUT_OC_LV_FAULT")
            if STATUS_IOUT_get >> 5 & 1:
                print("*** IOUT_OC_WARNING")
            if STATUS_IOUT_get >> 4 & 1:
                print("*** IOUT_UC_FAULT")
        else:
            Iout_status = "OK"
    
        time.sleep(0.5)
    
        # Iout Status
        STATUS_TEMP_get = I2C.read_byte_data(ADDRESS, STATUS_TEMPERATURE)
        if STATUS_TEMP_get != 0:
            Temp_status = "NOT OK"
            if STATUS_TEMP_get >> 7 & 1:
                print("*** OT_FAULT")
            if STATUS_TEMP_get >> 6 & 1:
                print("*** OT_WARNING")
        else:
            Temp_status = "OK"
    
    
        print("STATUS_VOUT: {0:b} - 0x{0:x}".format(STATUS_VOUT_get, STATUS_VOUT_get))
        print("STATUS_IOUT: {0:b} - 0x{0:x}".format(STATUS_IOUT_get, STATUS_IOUT_get))
        print("STATUS_TEMP: {0:b} - 0x{0:x}".format(STATUS_TEMP_get, STATUS_TEMP_get))
    
        return Vout_status, Iout_status, Temp_status
    
    ########################################################
    Main
    for i in range(0, 6):
        print("\nMeasuring: {}".format(array_rail_name[i]))
    
         Vout_status, Iout_status, Temp_status = faults(array_rail[i])
        print("Vout_status/Iout_status/Temp_status: {} / {} / {}".format(Vout_status, Iout_status, Temp_status))
        time.sleep(1)

    这里是终端的输出、您可以看到 VCC7电源轨 STATUS_TEMP 位的 MSB 设置、VCC5电源轨 STATUS_VOUT 的 MSB 设置了 MSN。 我不知道为什么 MSB 在根本没有故障时设置为1?

    Measuring: VCC12
    Page set to: 0
    Page read back:  0
    STATUS_VOUT: 0 - 0x0
    STATUS_IOUT: 0 - 0x0
    STATUS_TEMP: 0 - 0x0
    Vout_status/Iout_status/Temp_status: OK / OK / OK
    
    Measuring: VCC7
    Page set to: 1
    Page read back:  1
    *** OT_FAULT
    STATUS_VOUT: 0 - 0x0
    STATUS_IOUT: 0 - 0x0
    STATUS_TEMP: 10000000 - 0x80
    Vout_status/Iout_status/Temp_status: OK / OK / NOT OK
    
    Measuring: VCC5
    Page set to: 2
    Page read back:  2
    *** VOUT_OV_FAULT
    STATUS_VOUT: 10000000 - 0x80
    STATUS_IOUT: 0 - 0x0
    STATUS_TEMP: 0 - 0x0
    Vout_status/Iout_status/Temp_status: NOT OK / OK / OK
    
    Measuring: VCC_3p3
    Page set to: 3
    Page read back:  3
    STATUS_VOUT: 0 - 0x0
    STATUS_IOUT: 0 - 0x0
    STATUS_TEMP: 0 - 0x0
    Vout_status/Iout_status/Temp_status: OK / OK / OK

    PicoScope 示波器图像和波形:

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

    你好

    波形显示正确的数据(MSB 为0)、但您的软件或硬件以某种方式将 MSB 解释为1。 您必须进行调试以查看问题所在的位置。

    此致

    Yihe

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

    该波形不适用于列出的实际数据输出。 但我将看到我可以做什么。

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

    你(们)好

    我记得、使用低级 SMBus 工具时没有看到相同的问题、因此问题出在主机端、无论是硬件还是软件。

    在前一个答复中、您说波形上没有设置 MSB。 因此,我假设当您用1读取 MSB 时,波形的 MSB 设置为0。

    此致

    Yihe

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

    我想知道这是否是总线速度问题。 UCD90320以400kHz 的 I2C 速度运行、对吧?

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

    你(们)好

    否。90320是 I2C 从设备、可在400kHz 以下的速度下工作。

    此致

    Yihe

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

    已解决! Raspberry Pi 以100kHz 的频率运行。 将其设置为400kHz、现在工作正常!

    感谢你的所有帮助。

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

    你(们)好  

    知道这一点很好。 但听起来并不正确。  
    100kHz 或400kHz 不应影响90320。

    此致

    Yihe

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

    我认为 Raspberry PI 在读取时因总线速度差异而混乱。 但是、它影响页面和状态命令、但不影响电压和电流读数的原因超出了我的范围。

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

    你(们)好  

    电压和电流读数具有不同的协议作为 STATUS 和 PAGE 命令

    此致

    Yihe

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

    不同协议的含义是什么?

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

    你(们)好

    一个是写入/读取字、另一个是写入/读取字节。

    此致

    Yihe