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.

[参考译文] BQ79600EVM:BQ79600EVM 不通过 SPI 通道进行通信

Guru**** 2535750 points
Other Parts Discussed in Thread: BQ79600EVM, BQ79616, BQ79616-Q1

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1120832/bq79600evm-bq79600evm-not-communicate-over-spi-channel

器件型号:BQ79600EVM
主题中讨论的其他器件: BQ79616-Q1

尊敬的 TI 团队:

我正在尝试通过 SPI 通信来限制我们的微控制器(RH850/P1M)与桥接器件 BQ79600EVM-030之间的通信、并尝试通过菊花链 COM 端口通道读取 AFE BQ79616EVM 的电压读数。

当我们通过 SPI 将命令帧从 MCU (RH850)发送到桥接 IC BQ79600EVM 时,我们可以在从微控制器到桥接器 BQ79600EVM 的 MOSI 线路上看到相同的数据, 但是、桥式 IC (BQ79600EVM)的 MISO 线路上没有数据、或者 MISO 线路一直是 high.it、这意味着桥式器件不响应 MCU (主器件)。

注:-目前我仅使用一个 BQ79616EVM 器件,因此请检查下面给定的所有输入/命令序列,请记住,我们现在只使用一个 BQ79616器件/不堆叠。

硬件连接如下:-

1.我们将 MOSI_RX (MCU)与连接器 J4A (PIN7 [MOSI_RX])上的桥接器件(BQ79600EVM)连接

2.我们将 MSO_TX (MCU)与连接器 J4B (PIN8 [MSO_TX])上的桥接器件(BQ79600EVM)相连

3.我们将 MCU 的 SCLK 与连接器 J4A (引脚3[SCLK])上的桥接器件(BQ79600EVM)相连

4.我们将 MCU 的 UCS 与连接器 J4A (Pin9[UCS])上的桥接器件(BQ79600EVM)连接

5)将 MCU 的 uUART_SPI_RDY 与 J4B 上的器件(BQ79600EVM)连接(PIN2[uUART_SPI_RDY])、该引脚只有10K 上拉电阻、BQ79600EVM 上为5V。

6)并将 BQ79600EVM DAISY COM 端口(COMH/J15)与 AFE BQ79616EVM DAISY COML/J10 (4线双绞线)相连。

7.将 MCU/BQ79600/BQ79616保持在公共 GND 上。

8.为 BQ79616EVM 提供36VDC

SPI 通道上的命令序列:-

SPIWakeUp79600()

空 SPIWakeUp79600 (空)

uint16 loop_cntr;
//-------------------------------------------------- //
SET_TO_OUTPUT (SPI_CS、Port_PortGroup312_SPI_CS_EN、高电平);
SET_TO_OUTPUT (SPI_MOSI、Port_PortGroup37_SPI_MOSI_EN、高电平);
for (loop_cntr=0;loop_cntr<4000;loop_cntr++);//2US 延迟
for (loop_cntr=0;loop_cntr<4000;loop_cntr++);//2US 延迟

//---- 2us 延迟-------------------------------
SET_SPI_CS_EN (低电平);
for (loop_cntr=0;loop_cntr<100;loop_cntr++);
SET_SPI_MOSI_EN (低电平);

//---- 2.75mS 延迟---
for (loop_cntr=0;loop_cntr<40000;loop_cntr++);
for (loop_cntr=0;loop_cntr<40000;loop_cntr++);
for (loop_cntr=0;loop_cntr<40000;loop_cntr++);
for (loop_cntr=0;loop_cntr<25000;loop_cntr++);
///----------------------------------------------------------

//---- 2us 延迟---------------------------------
SET_SPI_MOSI_EN (高电平);//
for (loop_cntr=0;loop_cntr<100;loop_cntr++);
SET_SPI_CS_EN (高电平);

Delay3_5ms ();

3.然后初始化 SPI 通信

4.

//--用于唤醒堆叠器件的单器件写命令帧--//
//--initialize BQ79616-Q1 stack---//
TEMP_TX_Buffer[0]= 0x90;//Init 字节
TEMP_TX_Buffer[1]= 0x00;//器件 ID = 0x00
TEMP_TX_Buffer[2]= 0x03;//Reg Address=0x0309 || MSB 优先
TEMP_TX_Buffer[3]= 0x09;
TEMP_TX_Buffer[4]= 0x20;//CONTROL1 [SEND_WAKE]=1=0x20|| MSB 优先
TEMP_TX_Buffer[5]= 0x13;//CRC LSB = 0x13,CRC-16校准= 0x9513
TEMP_TX_Buffer[6]= 0x95;//CRC MSB=0x95

lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、7);


提供11.75 ms 的延迟

Delay11_7ms ();//延迟=11.7mS 唤醒音的持续时间。

然后发送 SPI 自动寻址命令序列
SpiAutoAddress()

//********
//自动寻址序列
//********
空 SpiAutoAddress (空)

布尔 Lb_returnValue = E_NOT_OK;

//--用于自动排序的单个器件写命令帧--//
//---dummy 写入 OTP_ECC_DATAIN1以同步 DLL--//
TEMP_TX_Buffer[0]= 0xB0;//Init 字节
TEMP_TX_Buffer[1]= 0x03;//OTP_ECC_DATAIN1地址
TEMP_TX_Buffer[2]= 0x43;
TEMP_TX_Buffer[3]= 0x00;//OTP_ECC_DATAIN1数据
TEMP_TX_Buffer[4]= 0xE7;//CRC LSB = 0xE7、CRC-16校准= 0xD4E7
TEMP_TX_Buffer[5]= 0xD4;//CRC MSB=0xD4
lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、6);

//---dummy 写入 OTP_ECC_DATAIN2以同步 DLL--//
TEMP_TX_Buffer[0]= 0xB0;//Init 字节
TEMP_TX_Buffer[1]= 0x03;//OTP_ECC_DATAIN2地址
TEMP_TX_Buffer[2]= 0x44;
TEMP_TX_Buffer[3]= 0x00;//OTP_ECC_DATAIN2数据
TEMP_TX_Buffer[4]= 0xE5;/CRC-16校准
TEMP_TX_Buffer[5]= 0xE4;
lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、6);

//---dummy 写入 OTP_ECC_DATAIN3以同步 DLL--//
TEMP_TX_Buffer[0]= 0xB0;//Init 字节
TEMP_TX_Buffer[1]= 0x03;//OTP_ECC_DATAIN3地址
TEMP_TX_Buffer[2]= 0x45;
TEMP_TX_Buffer[3]= 0x00;//OTP_ECC_DATAIN3数据
TEMP_TX_Buffer[4]= 0xE4;/CRC-16校准
TEMP_TX_Buffer[5]= 0x74;
lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、6);

//---dummy 写入 OTP_ECC_DATAIN4以同步 DLL--//
TEMP_TX_Buffer[0]= 0xB0;//Init 字节
TEMP_TX_Buffer[1]= 0x03;//OTP_ECC_DATAIN4地址
TEMP_TX_Buffer[2]= 0x46;
TEMP_TX_Buffer[3]= 0x00;//OTP_ECC_DATAIN4数据
TEMP_TX_Buffer[4]= 0xE4;/CRC-16校准
TEMP_TX_Buffer[5]= 0x84;
lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、6);

//---dummy 写入 OTP_ECC_DATAIN5以同步 DLL--//
TEMP_TX_Buffer[0]= 0xB0;//Init 字节
TEMP_TX_Buffer[1]= 0x03;//OTP_ECC_DATAIN5地址
TEMP_TX_Buffer[2]= 0x47;
TEMP_TX_Buffer[3]= 0x00;//OTP_ECC_DATAIN5数据
TEMP_TX_Buffer[4]= 0xE5;/CRC-16校准
TEMP_TX_Buffer[5]= 0x14;
lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、6);

//---dummy 写入 OTP_ECC_DATAIN6以同步 DLL--//
TEMP_TX_Buffer[0]= 0xB0;//Init 字节
TEMP_TX_Buffer[1]= 0x03;//OTP_ECC_DATAIN6地址
TEMP_TX_Buffer[2]= 0x48;
TEMP_TX_Buffer[3]= 0x00;//OTP_ECC_DATAIN6数据
TEMP_TX_Buffer[4]= 0xE0;//CRC-16校准
TEMP_TX_Buffer[5]= 0xE4;
lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、6);

//---dummy 写入 OTP_ECC_DATAIN7以同步 DLL--//
TEMP_TX_Buffer[0]= 0xB0;//Init 字节
TEMP_TX_Buffer[1]= 0x03;//OTP_ECC_DATAIN7地址
TEMP_TX_Buffer[2]= 0x49;
TEMP_TX_Buffer[3]= 0x00;//OTP_ECC_DATAIN7数据
TEMP_TX_Buffer[4]= 0xE1;//CRC-16校准
TEMP_TX_Buffer[5]= 0x74;
lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、6);

//---dummy 写入 OTP_ECC_DATAIN8以同步 DLL--//
TEMP_TX_Buffer[0]= 0xB0;//Init 字节
TEMP_TX_Buffer[1]= 0x03;//OTP_ECC_DATAIN8地址
TEMP_TX_Buffer[2]= 0x4A;
TEMP_TX_Buffer[3]= 0x00;//OTP_ECC_DATAIN8数据
TEMP_TX_Buffer[4]= 0xE1;//CRC-16校准
TEMP_TX_Buffer[5]= 0x84;
lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、6);

//--Enable Auto-Addressing Mode (启用自动寻址模式)--//
TEMP_TX_Buffer[0]= 0xD0;//Init 字节
TEMP_TX_Buffer[1]= 0x03;//Reg 地址
TEMP_TX_Buffer[2]= 0x09;
TEMP_TX_Buffer[3]= 0x01;//设置自动寻址模式
TEMP_TX_Buffer[4]= 0x0F;/CRC-16校准
TEMP_TX_Buffer[5]= 0x74;
lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、6);

//--set Bridge Device DIR0_ADDR=0 --//
TEMP_TX_Buffer[0]= 0xD0;//Init 字节
TEMP_TX_Buffer[1]= 0x03;//Reg 地址
TEMP_TX_Buffer[2]= 0x06;
TEMP_TX_Buffer[3]= 0x00;//选择桥接器件
TEMP_TX_Buffer[4]= 0xCB;//CRC-16校准
TEMP_TX_Buffer[5]= 0x44;
lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、6);

//---set BQ79616 Device as Stack 1 DIR0_ADDR=1 --//
TEMP_TX_Buffer[0]= 0xD0;//Init 字节
TEMP_TX_Buffer[1]= 0x03;//Reg 地址
TEMP_TX_Buffer[2]= 0x06;
TEMP_TX_Buffer[3]= 0x01;//选择栈第一个器件
TEMP_TX_Buffer[4]= 0x0A;//CRC-16校准
TEMP_TX_Buffer[5]= 0x84;
lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、6);

//--set Stack1 (BQ79616)同时作为堆栈器件和堆栈顶器件--//
TEMP_TX_Buffer[0]= 0x90;//Init 字节
TEMP_TX_Buffer[1]= 0x01;//器件 ID = 0x01
TEMP_TX_Buffer[2]= 0x03;//Reg 地址
TEMP_TX_Buffer[3]= 0x08;
TEMP_TX_Buffer[4]= 0x01;//将 BQ79616作为第一个堆栈和堆栈顶部器件
TEMP_TX_Buffer[5]= 0xD3;//CRC-16校准= 0xE1D3
TEMP_TX_Buffer[6]= 0xE1;

lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、7);

//============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================

//---- 电压读数命令序列--- //

//---- 读取电压------------------------------------------------------- //
//--Step 1 (16个有源电池)
spiTxBuffer[0]= 0x90;//Init 字节
spiTxBuffer[1]= 0x00;//器件 ID = 0x01、0x00
spiTxBuffer[2]= 0x03;
spiTxBuffer[3]= 0x0A;//16个有源单元

spiTxBuffer[4]= 0xAD;//CRC 字节= 0xD3AD
spiTxBuffer[5]= 0xD3;

lint_TxDataSize=6;
lb_returnValue = isl78714_SendCommand (spiTxBuffer、lint_TxDataSize);

for (loop_cntr=0;loop_cntr<10000;loop_cntr++);//200US 延迟

//--Step 2 (设置连续运行并启动 ADC)
spiTxBuffer[0]= 0x90;//Init 字节
spiTxBuffer[1]= 0x03;//器件 ID = 0x01、0x00
spiTxBuffer[2]= 0x0D;
spiTxBuffer[3]= 0x06;//16个有源单元

spiTxBuffer[4]= 0x59;//CRC 字节= 0xB659
spiTxBuffer[5]= 0xB6;

lint_TxDataSize=6;
lb_returnValue = isl78714_SendCommand (spiTxBuffer、lint_TxDataSize);

////--Step 3--200us 延迟在此被调用--//
for (loop_cntr=0;loop_cntr<10000;loop_cntr++);//200US 延迟

//---步骤4 (读取 ADC 测量值)
spiTxBuffer[0]= 0x90;//Init 字节
spiTxBuffer[1]= 0x05;//器件 ID = 0x01、0x00
spiTxBuffer[2]= 0x68;
spiTxBuffer[3]= 0x1F;//16个有源单元

spiTxBuffer[4]= 0x53;//CRC 字节= 0x2D53
spiTxBuffer[5]= 0x2D;

lint_TxDataSize=6;
lb_returnValue = isl78714_SendCommand (spiTxBuffer、lint_TxDataSize);

//----电压读数在这里结束--------------

//============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================

我们在读取电芯电压时进行了此活动,但在 MISO 线路/或桥接器件上没有得到任何响应,没有任何响应。请说明我缺少什么  

请指导我。

问题:-向桥接器件发送 SPI 唤醒 ping 信号后、如何确保 BQ79600器件是否唤醒?

此致、

Pankaj

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

    您好 Pankaj、

    查看您的 MCU 和 BQ79600之间的连接后、我看不到有关将 MCU 的3.3V 电源连接到 J4引脚6上的79600以及将 MCU 的 GND 连接到79600 J4-引脚5的信息。 它是否已连接。

    在'PIWakeUp79600 ()'之后、您应该会看到 BQ79600上的 LED 为高电平、这表示器件已唤醒。  

    在发送 值为0x20的'Reg Address=0x0309后、您应该会看到 BQ79616上的 LED 为高电平、这表示堆栈器件已启动。

    您能否还共享 SPI 通信的逻辑分析仪日志?

    谢谢、

    Ravi

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

    你好,Ravi,

    感谢您的回复。

    我已经从 J3 (5V/TP9) 和  J4 (pin5)(连接到 GND)给出了 J4 (Pin6/Vio)上的5V 电压。

    现在、当我们连接编程器并进入调试时 、LED2 (绿色)和 LED3 (红色) 会在  执行 SPIWakeUp79600 ()函数之前同时打开、直到2分钟、  并且 J4B 上的 UART_SPI_RDY (PIN2[uUART_SPI_RDY]) 在此时间段(即2分钟)内变为低电平。

    因此,仅 在 MOSI 线路上看到的数据  也会消失2分钟。完成2分钟后,LED LED2和 LED3都熄灭, J4B (PIN2[uUART_SPI_RDY]) 变为高电平,数据仅在 MOSI 线路上显示,就像之前一样。

    那么、这意味着两个 LED 都会亮起2分钟、然后熄灭?  

    断开调试器的连接并 再次打开(MCU+BQ79600+BQ79616)时也会发生同样的情况 。

    此致、

    Pankaj

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

    尊敬的 Ravi:

    如果您在印度,请在印度时间(上午8点至下午5点)回复我的查询,以便我可以检查您的建议并执行此活动,否则我们将需要很多人来解决此问题。

    为供参考、我将共享上述命令序列的逻辑分析仪日志以及 WAKEUP ping 和 BQ79616初始化命令的波形。   e2e.ti.com/.../8267.Command-Log.txt 

    请尽快为我提供指导。

    此致、

    Pankaj

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

    您好 Pankaj、

     BQ79600 'COMM_TIMEOUT'(0x2005)上有一个通信超时寄存 器,默认值为0x34 (因此在1分钟后将出现通信超时)。 为了避免超时、将"COMM_TIMEOUT"寄存器值更新为"0"。

    在您的命令序列中、我看到您正在执行器件写入 命令、 但我看不到任何读取命令。 您能否尝试发出读取命令并查看是否收到回复。

    a)在'PIWakeUp79600()'之后、尝试从 BQ79600读取

    b)自动寻址后、尝试从 BQ79616读取

    很抱歉、我位于达拉斯、请等待回复延迟。

    谢谢、

    Ravi

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

    尊敬的 Ravi:

    我已经按照你的建议进行了尝试,但没有得到同样的改进结果  

    当我们进入调试模式时,两个 LED 都会立即亮起, 我 在   MOSI 线路上只能看到7字节的 COMM_TIMEOUT 数据,MISO 线路在2分钟内处于高电平, 而在 J4B 上的 UART_SPI_RDY (PIN2[uUART_SPI_RDY]) 在此时间段内(即2分钟)会变为低电平,当尝试按照您在 SPIWUpake79600 ()调用函数后所建议的方法读取/获取数据时。

    ///----------------------------------------------------------

    SPIWakeUp79600 ();//1st Wakeup ping  
    Delay3_5ms ();//delay=3.5ms

    ///----------------------------------------------------------


    ///----------------------------------------------------------
    EcumM_Init();//通信模块初始化:SPI/内核
    ///----------------------------------------------------------

    ///----------------------------------------------------------
    /---为避免超时,更新寄存器的值:Com_Timeout=0x00,Reg Adress =0x2005
    TEMP_TX_Buffer[0]= 0x90;//Init 字节
    TEMP_TX_Buffer[1]= 0x00;//器件 ID = 0x00
    TEMP_TX_Buffer[2]= 0x20;//Reg Address=0x2005 || MSB 优先
    TEMP_TX_Buffer[3]= 0x05;
    TEMP_TX_Buffer[4]= 0x00;//COMM_TIMEOUT=0x00
    TEMP_TX_Buffer[5]= 0xE6;//CRC LSB = 0xE6、CRC-16校准= 0x87E6
    TEMP_TX_Buffer[6]= 0x87;//CRC MSB=0x87

    //---- 命令现在正在传输中---- //
    lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、7);
    //---- 获取/读取响应--- //
    lb_returnValue = BQ79600_RequestAndWaitResponse (spirxStatusBuffer、7、ISL_WAIT_DATARDY、ISL_WAIT_SPI_RX_ACK);
    ///----------------------------------------------------------

    ///----------------------------------------------------------

    //--用于唤醒堆叠器件的单器件写命令帧--//
    //--initialize BQ79616-Q1 stack---//
    TEMP_TX_Buffer[0]= 0x90;//Init 字节
    TEMP_TX_Buffer[1]= 0x00;//器件 ID = 0x01、0x00
    TEMP_TX_Buffer[2]= 0x03;//Reg Address=0x0309 || MSB 优先
    TEMP_TX_Buffer[3]= 0x09;
    TEMP_TX_Buffer[4]= 0x20;//CONTROL1 [SEND_WAKE]=1=0x20|| MSB 优先
    TEMP_TX_Buffer[5]= 0x13;//CRC LSB = 0x13、CRC-16校准= 0x9513
    TEMP_TX_Buffer[6]= 0x95;//CRC MSB=0x95

    lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、7);//命令现在正在传输中
    Delay11_7ms ();//延迟=11.7mS 唤醒音的持续时间。
    ///----------------------------------

    ///----------------------------------
    SpiAutoAddress();//SPI 自动寻址
    ///-------------------------------------------------------

    2分钟后、在  J4B 上完成 uUART_SPI_RDY (PIN2[uUART_SPI_RDY]) 后、 我们只能在 MOSI 线路上看到以下数据、同样、MISO 线路保持高电平状态、这意味着(桥接器件 BQ79600)在 MISO 线路上没有任何响应 。

    //=================== 读取电压设置================================= //

    //---- 命令现在在传输的开始中------------------------------------------------------- //
    //--Step 1 (16个有源电池)
    spiTxBuffer[0]= 0x90;//Init 字节
    spiTxBuffer[1]= 0x00;//器件 ID = 0x01、0x00
    spiTxBuffer[2]= 0x03;
    spiTxBuffer[3]= 0x0A;//16个有源单元
    spiTxBuffer[4]= 0xAD;//CRC 字节= 0xD3AD
    spiTxBuffer[5]= 0xD3;

    lint_TxDataSize=6;
    lb_returnValue = isl78714_SendCommand (spiTxBuffer、lint_TxDataSize);

    for (loop_cntr=0;loop_cntr<10000;loop_cntr++);//200US 延迟



    //--Step 2 (设置连续运行并启动 ADC)
    spiTxBuffer[0]= 0x90;//Init 字节
    spiTxBuffer[1]= 0x03;//器件 ID = 0x01、0x00
    spiTxBuffer[2]= 0x0D;
    spiTxBuffer[3]= 0x06;//16个有源单元
    spiTxBuffer[4]= 0x59;//CRC 字节= 0xB659
    spiTxBuffer[5]= 0xB6;

    lint_TxDataSize=6;
    lb_returnValue = isl78714_SendCommand (spiTxBuffer、lint_TxDataSize);

    //--Step 3 200uS delay 在这里被调用--//
    for (loop_cntr=0;loop_cntr<10000;loop_cntr++);//200US 延迟

    //---步骤4 (读取 ADC 测量值)
    spiTxBuffer[0]= 0x90;//Init 字节
    spiTxBuffer[1]= 0x05;//器件 ID = 0x01、0x00
    spiTxBuffer[2]= 0x68;
    spiTxBuffer[3]= 0x1F;//16个有源单元
    spiTxBuffer[4]= 0x53;//CRC 字节= 0x2D53
    spiTxBuffer[5]= 0x2D;

    lint_TxDataSize=6;
    lb_returnValue = isl78714_SendCommand (spiTxBuffer、lint_TxDataSize);

    //---- 命令现在在传输结束的情况下------------------------ //

    ///----------------------------------------------

    ///----------------------------------------------------------

    //---- 获取/读取响应--- //

    lb_returnValue = BQ79600_RequestAndWaitResponse (spiRxStatusBuffer、lint_RxDataSize、ISL_WAIT_DATARDY、ISL_WAIT_SPI_RX_ACK);

    ///----------------------------------------------

    您的查询:-   b)自动地址后尝试从 BQ79616读取

    我的答案:-我们只能通过 SPI 与(BQ79600桥接器)进行通信、以便在 BQ79616中读取/写入任何数据。请更正我能否正确理解您的问题?

    我的问题:-我们如何确保 BQ79600没有响应? 不响应桥接器件的原因可能是

    (1)错误连接(BQ79616+BQ79600)。(我在前面的讨论中已经提到了两者的当前连接)

    (2) BQ79616器件可能存在一些设置问题。

    那么、这些器件中是否有任何指示、以便我们可以找到/结论哪个器件会产生问题?

    我向你提出的要求 ,请你也从这个 方向思考!!!! 缺少什么!!!!

    此致、

    Pankaj

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

    您好 Pankaj、

    我共享的新命令序列具有读取请求,您是否看到 BQ79600的响应? 您能否共享 SPI 日志

    您能否分享您从 BQ79600读取的寄存器。

    在线查找我的问题答案

    (1)错误连接(BQ79616+BQ79600)。(我在前面的讨论中已经提到了两者的当前连接)

      >>无论 BQ79616和 BQ79600之间的连接如何,当您在 BQ79600 (例如0x2005)上读取寄存器时,MCU 都应该能够从 BQ79600接收到响应

    (2) BQ79616器件可能存在一些设置问题。

      >>为寄存器0x309写入值0x20应该通过 COM 将唤醒信号从 BQ79600发送到 BQ79616。 如果 BQ79616已正确通电、它应该会唤醒。

    您可以从 BQ79600探测 SPI_RDY 和 COMHP 线路、以查看 BQ79616的响应。

    此致、

    Ravi