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.

[参考译文] BQ76PL455A-Q1:如何唤醒菊花链配置中的堆叠器件?

Guru**** 2614265 points


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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/763410/bq76pl455a-q1-how-to-wakeup-stacked-devices-in-daisy-chain-configuration

器件型号:BQ76PL455A-Q1

大家好、

我在电路中使用2个 bq76pl455A-Q1器件。 它们都位于同一 PCB 板上、并通过菊花链电路连接。 当我通过唤醒信号电压唤醒基板时、只有基板会被唤醒。 其他电路板不会被唤醒。

我们是否需要编写软件来唤醒另一个电路板?

请帮帮我。

谢谢  

Ritul Shah

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

    感谢您选择 TI 的器件。

    无需编写软件。

    通过轮询0-1-0中前455的 WAKEUP 引脚、应唤醒所有器件。

    详情请参阅7.4.1/7.4.2/7.4.3。

    请确保前455个(称为基极器件)的 WAKUP 引脚应连接到 MCU 的 GPIO、其他器件(称为堆栈器件)的唤醒引脚应连接到本地接地。

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

    尊敬的 Andy:

    我已经尝试过提到的步骤。 这样、我就只能唤醒基板。 顶部板无法唤醒。

    请在下面找到所附的原理图片段以供参考。 如果 IC 有问题、请告诉我。

    谢谢

    Ritul Shah

    e2e.ti.com/.../8507.SCH.rar

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

    我已经尝试过提到的步骤。 这样、我就只能唤醒基板。 顶部板无法唤醒。

    请在下面找到所附的原理图片段以供参考。 如果 IC 有问题、请告诉我。

    谢谢

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

    您好 Ritul、

    那么、在您的电路板中、有两个455s、对吧?

    "基板"是第一块455、"顶板"是第二块455?

    将第二个替换为一个肉身、然后重试。

    我在您的原理图中没有发现任何问题。

    谢谢!

    Andy

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

    尊敬的 Andy:

    感谢你的答复。

    我在焊接方面遇到了一些问题、因此第二个 bq76pl455A-Q1无法唤醒。 我已经解决了这个问题、现在能够唤醒两个 IC。

    接下来、我将执行自动寻址并尝试读取器件 ID。 我已将基板写入 ID = 0、将顶部板写入 ID = 1。 但基板和顶部板均读取为0。

    因此、我认为我无法与顶部板通信。

    请在下面查找我的代码以供参考。 请告诉我是否有任何错误或我遗漏的任何内容。

    nDev_ID = 0;
    nSent = WriteReg (nDev_ID、COMCONFIG、0x10E0、2、 FRMWRT_All_NR);//将通信波特率设置为250KB 波特
    
    率 nSent = WriteReg (nDev_ID、DEV_CTRL、0x08、1、FRMWRT_All_NR);//自动地址启用
    
    nSent = WriteReg (nDev_ID、DEV_CTRL、0x08、1、FRMWRT_All_NR);//自动地址使能
    
    uint8_t wTemp、wTemp1;
    //为
    (nDev_ID = 0;nDev_ID < TOTALBOARDS;nDev_ID++)设置菊花链中所有板的地址
    (第1.2.3节){
    nSent = WriteReg (nDev_ID、ADDR、nDev_ID、nDev_ID、nHRT_1、mWFRNr); //向每个电路板发送地址
    }
    
    //读取器件 ID 以查看是否有响应
    nDev_ID = 0;
    nRead = ReadReg (nDev_ID、ADDR、&wTemp、1、 0);// 0ms 超时
    printf ("设备 ID 0:%d\r\n"、wTemp);
    
    nDev_ID = 1;
    nRead = ReadReg (nDev_ID、ADDR、 &wTemp1、1、0);// 0ms 超时
    printf ("设备 ID 1:%d\r\n"、wTemp1);
    
    nDev_ID = 1;
    nSent = WriteReg (nDev_ID、COMCONFIG、 0x1020、2、FRMWRT_SGL_NR);//针对顶部板仅启用通信低电平
    
    nDev_ID = 0;
    nSent = WriteReg (nDev_ID、COMCONFIG、0x10C0、2、 FRMWRT_SGL_NR);//在底板上启用通信高电平、单端通信端口 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在另一个主题中查看我同事的回答。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    好的。
    谢谢你