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.

[参考译文] BQ79616EVM-021:BQ79616器件的 TSREF 引脚上的电压不产生

Guru**** 2609955 points
Other Parts Discussed in Thread: BQ79616

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1160927/bq79616evm-021-voltage-not-making-on-tsref-pin-of-bq79616-device

器件型号:BQ79616EVM-021

尊敬的 TI 团队:

我们正在开发 BQ79616 EVM 和 BQ79600 EVM。  我们能够很好地通过 SPI 通信读取电池电压/ DIETEMP1温度/器件 ID。

但当我们尝试读取外部 NTC/温度传感器时。 然后、我们没有获得 BQ79616器件 TSREF 引脚上的电压。当我们尝试读取 GPIO1_HI 地址= 0x058E 时

然后、我们不断得到值=0x8000。

为供您参考、我们随 此主题附上了逻辑分析器的命令序列和数据日志。

注意:-我们发现 TP4/NPNB 上的电压= 6.6V

                         TP2/LDOIN=6.00伏

                         TP1/TSREF = 0.00伏 。

请指导我们出错的地方。

不是:-由于尺寸较大、逻辑分析仪数据无法与该线程连接。

@ Vikash 先生,我将在电子邮件中分享逻辑分析仪数据。

此致、

Pankaj e2e.ti.com/.../Renesas_5F00_TSREF_5F00_GPIO1_5F00_Reading.csv

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

    您好 Pankaj、

    您是否确保有一条命令用于控制2寄存器中的 TSREF_EN 位? 在数据表中、您可以找到有关此设置的信息、并且默认情况下它处于关闭状态。

    此致、

    泰勒

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

    您好、Taylor、

    感谢响应、是的、     我们在寄存   器地址=0x030A 处写入 CONTROL2[TSREF_EN]= 1、并在寄存器地址=0x000E 处写入 GPIO1[GPIO1[2:0]]=0x01、用于将 GPIO1引脚配置为 ADC 和 OTUT 输入。

    还可以找到下面的针对 TSREF 和 GPIO1设置的命令序列、我们已经完成了以下操作:

    步骤1:

    //--Write Control2[TSREF_EN]= 1、寄存器地址= 0x030A -//
    //-启用 TSREF LDO 输出。 用于偏置 NTC 热敏电阻-//

    TEMP_TX_Buffer[0]= 0x90;//Init 字节
    TEMP_TX_Buffer[1]= 0x00;//器件 ID = 0x00
    TEMP_TX_Buffer[2]= 0x03;//Reg Address=0x030A || MSB 优先
    TEMP_TX_Buffer[3]= 0x0A;
    TEMP_TX_Buffer[4]= 0x01;//Control2[TSREF_EN]= 1 = 0x01
    TEMP_TX_Buffer[5]= 0xD3;//CRC LSB = 0xD3、CRC-16校准= 0x7DD3
    TEMP_TX_Buffer[6]= 0x7D;//CRC MSB=0x7D

     lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、7);//通过 SPI 写入上述命令

    步骤2:

    将延迟设置为382uSsecond/以上。

    步骤3:

    ///---GPIO 温度传感器的 ADC 配置--/
    //---- GPIO_CONV1:0x000E---
    //--GPIO1配置--//
    TEMP_TX_Buffer[0]= 0xB0;//Init 字节、栈写
    TEMP_TX_Buffer[1]= 0x00;//Reg AddressGPIO_CONF1:0x000E || MSB 优先
    TEMP_TX_Buffer[2]= 0x0E;
    TEMP_TX_Buffer[3]= 0x01;//Value=0x01 (仅 GPIO1配置)-->作为 ADC 和 OTUT 输入。
    TEMP_TX_Buffer[4]= 0xE3;//CRC LSB = 0xE3、CRC-16校准= 0x44E3
    TEMP_TX_Buffer[5]= 0x44;//CRC MSB=0x44

    lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、6);//通过 SPI 写入上述命令

    步骤4:

    已使用引脚1和2上的跳线 J5。

    有关 Logic Analyzer 的定时和数据日志的详细信息,请查看您的电子邮件 ,我已在 Excel 工作表中共享了 Logic Analyzer 数据和命令序列。

    此致、

    Pankaj  

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

    Pankaj、

    为什么要写入器件0x00? bq79600确实具有 TSREF、因此您似乎需要更新代码以写入正确的616器件地址。

    此致、

    泰勒

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

    您好、Taylor、

    感谢您的回答、

    到目前为止、我们正在使用单个 BQ79616器件、因此正确的器件 ID 是什么? 我必须写入的数据?

    按照 ME、设备 ID (616)应为0x01  

    因此、我们必须在  步骤1中写入/更正以下数据中的器件 ID。 如您所建议  

    //--Write Control2[TSREF_EN]= 1、寄存器地址= 0x030A -//
    //-启用 TSREF LDO 输出。 用于偏置 NTC 热敏电阻-//

    TEMP_TX_Buffer[0]= 0x90;//Init 字节
    TEMP_TX_Buffer[1]= 0x01;//器件 ID = 0x01 (BQ79616的器件 ID)
    TEMP_TX_Buffer[2]= 0x03;//Reg Address=0x030A || MSB 优先
    TEMP_TX_Buffer[3]= 0x0A;
    TEMP_TX_Buffer[4]= 0x01;//Control2[TSREF_EN]= 1 = 0x01
    TEMP_TX_Buffer[5]= 0xD2;//CRC LSB = 0xD2、CRC-16校准= 0x81D2
    TEMP_TX_Buffer[6]= 0x81;//CRC MSB=0x81

     lb_returnValue = R_SPI_Send (0、Temp_TX_Buffer、Temp_RX_Buffer、7);//通过 SPI 写入上述命令

    如果我错了、请纠正我的问题?

    此致、

    Pankaj

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

    Pankaj、

    是的、您需要正确的地址。 您似乎 尚未 在 mysecure 中更详细地查看我们的软件用户指南或数据表、以了解自动地址例程。 请先查看。

    此致、

    泰勒

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

    您好、Taylor、

    感谢您关注缺失的点(16器件地址)。 现在我能够看到 TSREF 引脚上的5V 电压。

    但仍然无法读取 NTC (GPIO1引脚上的 RT8)的温度值。

    尽管 TSREF=5V 时的电压,

              TP44/GPIO1_R=2.00V 时的电压

    跳线设置:- 1. 在引脚上使用跳线 J4 (1 &2)  

                    2.引脚(1和2)上的 J5

    我们为 GPIO1端口配置设置编写以下命令序列

    步骤:1.  

    //---- ADC_CTRL1:0x030D---
    TEMP_TX_Buffer[0]= 0xB0;//Init 字节、栈写
    TEMP_TX_Buffer[1]= 0x03;//Reg 地址 ADC_CTRL1 = 0x030D || MSB 优先
    TEMP_TX_Buffer[2]= 0x0D;
    TEMP_TX_Buffer[3]= 0x06;//value=0x06
    TEMP_TX_Buffer[4]= 0x52;//CRC LSB = 0x52,CRC-16校准= 0x7652
    TEMP_TX_Buffer[5]= 0x76;//CRC MSB=0x76

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

    步骤:2.

    //--Write Control2[TSREF_EN]= 1、寄存器地址= 0x030A -//
    //-启用 TSREF LDO 输出。 用于偏置 NTC 热敏电阻-//

    TEMP_TX_Buffer[0]= 0x90;//Init 字节
    TEMP_TX_Buffer[1]= 0x01;//器件 ID = 0x01 (要写入的 BQ79616器件 ID)
    TEMP_TX_Buffer[2]= 0x03;//Reg Address=0x030A || MSB 优先
    TEMP_TX_Buffer[3]= 0x0A;
    TEMP_TX_Buffer[4]= 0x01;//Control2[TSREF_EN]= 1 = 0x01
    TEMP_TX_Buffer[5]= 0xD2;//CRC LSB = 0xD2、CRC-16校准= 0x81D2
    TEMP_TX_Buffer[6]= 0x81;//CRC MSB=0x81

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

    步骤:3.  

     提供382us 延迟

    步骤:4.

     ///---GPIO 温度传感器的 ADC 配置--/
    //---- GPIO_CONF1:0x000E--//
    ///-- RT8 NTC-//的 GPIO1配置
    TEMP_TX_Buffer[0]= 0xB0;//Init 字节、栈写
    TEMP_TX_Buffer[1]= 0x00;//Reg 地址 GPIO_CONF1:0x000E || MSB 优先
    TEMP_TX_Buffer[2]= 0x0E;
    TEMP_TX_Buffer[3]= 0x01;//Value=0x01 (仅 GPIO1配置)-->作为 ADC 和 OTUT 输入
    TEMP_TX_Buffer[4]= 0xE3;//CRC LSB = 0xE3、CRC-16校准= 0x44E3
    TEMP_TX_Buffer[5]= 0x44;//CRC MSB=0x44   

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

    步骤:5.

    //--while 循环中的迭代--//

    while (1)

    编写用于 读取 GPIO1_HI/LO NTC 温度的命令

    //--GPIO1_HI/LO NTC/RT8温度读数--//
    //--GPIO1_HI 地址=0x058E--//
    TEMP_TX_Buffer[0]= 0xA0;//Init 字节、栈读取
    TEMP_TX_Buffer[1]= 0x05;//寄存器地址 GPIO1_HI = 0x058E
    TEMP_TX_Buffer[2]= 0x8E;
    TEMP_TX_Buffer[3]= 0x01;//2字节数据[字节数量= Value+1。 即1字节 GPIO1_HI (0x058E)+ 1字节 GPIO1_LO (0x058F)]

    TEMP_TX_Buffer[4]= 0x96;//CRC 字节= 0x4596 (用于2字节数据)
    TEMP_TX_Buffer[5]= 0x45;

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

    //---发送此虚拟字节是为了生成用于读取数据的8字节时钟--//

    TEMP_TX_Buffer[0]= 0xFF;

    TEMP_TX_Buffer[1]= 0xFF;
    TEMP_TX_Buffer[2]= 0xFF;
    TEMP_TX_Buffer[3]= 0xFF;
    TEMP_TX_Buffer[4]= 0xFF;
    TEMP_TX_Buffer[5]= 0xFF;
    TEMP_TX_Buffer[6]= 0xFF;
    TEMP_TX_Buffer[7]= 0xFF;

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

    当我们发送上述命令来读取 NTC/RT8温度时,我们得到了在 Excel 工作表中附加的寄存器地址0x058E 上的常量数据(0x8000)。

    请指导我在哪里犯了错误或设置将是其他问题?

    此致、

    Pankaj

     e2e.ti.com/.../Renesas_5F00_TSREF_5F00_GPIO1_5F00_Reading_5F00_14_5F00_10_5F00_2022.csv

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

    Pankaj、

    请参阅数据表第30页。 更改设置后需要主 ADC GO。 请再次仔细阅读材料、否则会错过更常见的错误。

    此致、

    泰勒

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

    您好、Taylor、

    感谢您的支持。

    问题得到解决。 现在我们能够读取 GPIO 引脚电压。

    非常感谢!!!!

    Pankaj