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.

[参考译文] BQ79656EVM-021:温度测量和存储温度数据的步骤

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1320974/bq79656evm-021-steps-for-the-temperature-measurement-and-storing-the-temperature-data

器件型号:BQ79656EVM-021
主题中讨论的其他器件:MSPM0G3507

您好!  

我正在将4个 Bq79656 EVM 用于 BMS 应用。 我需要启用温度测量并需要存储数据。 我使用 MSPM0G3507来连接这些器件。

我已经启用了电压测量并存储电压数据。

请为我提供启用电路板和编码侧温度测量的步骤。

谢谢。 此致、

Abhaya Raj Mishra

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

    尊敬的 Abhaya:

    若要将 GPIO 设置为 OTUT 和 ADC 模式:

    启用 TSREF:将0x01写入0x030A

    在 GPIO_conF1-4中设置 OTUT& ADC 模式:将0x09写入寄存器0x0E 至0x11

    在连续运行模式下启动主 ADC:将0x06写入0x030D

    此致、

    大卫

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

    "对不起,我不知道该怎么说。"

    好的、我要尝试一下。
    还有一点、温度 ADC 原始数据的乘法器如何呢?

    我应该乘以多少才能得到实际温度。

    谢谢。此

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

    尊敬的 Abhaya:

    对于内核温度、这是寄存器0x05AE 和0x05AF。 将高十六进制读数和低十六进制读数相加并乘以0.025、即可得出 Celcius 温度。

    对于 GPIO、使用的 NTC 应具有与 NTC 电阻相关的温度值。 GPIO 引脚通过热敏电阻上拉至 TSREF 并下拉至地、因此分压器公式将定义热敏电阻的电阻。 Rntc = Rtsref/(Vtsref/Vgpio + 1)、其中 Rntc = NTC 电阻、Vtsref = tsref 电压、Vgpio = GPIO 电压、而 Rtsref = Tsref 上拉电阻器的电阻。 然后、客户将 NTC 的电阻值限定在所需的温度范围内。 然后、它将告诉您电阻与哪个温度之间的关系。

    此致、

    大卫

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

    您好、我已启用 TSREF。

    启用 TSREF:将0x01写入0x030A

    但我得到 TSREF 的值为0。

    什么地方出了问题、您能帮忙吗?

    还有一点、我也启用了这些功能。

    在 GPIO_conf1-4中设置 OTUT& ADC 模式:将0x09写入寄存器0x0E 至0x11

    我得到 GPIO 的值是0.273899。

    对吗?

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

    尊敬的 Abhaya:  

    当您使用万用表将0x01写入0x030A 时、TSREF 的读数是否为0V? 如果您读取寄存器、0x030A 会读取什么?

    我得到 GPIO 的值是0.273899。

    对吗?

    [/报价]

    您是否可以布置将哪些电阻器/NTC 连接到 GPIO/TSREF、以便我可以对此提供更好的答案?

    此致、

    大卫

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    当您将0x01写入0x030A 时,TSREF 是否使用万用表读数为0V? 如果读取寄存器、0x030A 会读取什么?

    我将0x01写入0x30A、此后我将读取 TSREF_HI (0x58C)和  TSREF_LO (0x58D)。 显示的是0值。

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

    尊敬的 Abhaya:

    TSREF 连接到主 ADC。 如果主 ADC 未运行、则 TSREF 不会更新。

    在连续运行模式下启动主 ADC:将0x06写入0x030D

    此致、

    大卫

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

    //set up the main ADC
        WriteReg(0, ACTIVE_CELL, 0x0A, 1, FRMWRT_ALL_W);    //set all cells to active
        WriteReg(0, ADC_CONF1, 0x02, 1, FRMWRT_ALL_W);      //26Hz LPF_Vcell (38ms average)
        WriteReg(0, ADC_CTRL1, 0x0E, 1, FRMWRT_ALL_W);      //continuous run, LPF enabled and MAIN_GO
        delayus(38000+5*TOTALBOARDS);                       //initial delay to allow LPF to average for 38ms (26Hz LPF setting used)
    
    
        //set up tmepareture
    
    
        WriteReg(0, CONTROL2, 0x01, 1, FRMWRT_STK_W); //to enable the TSREF
        delayms(2);
    
        ReadReg(0, TSREF_HI, Tref, 2, 0, FRMWRT_ALL_R);
        uint16 Tref_T = (Tref[0] << 8) | Tref[1];
        printf("\n");
        printf("%d\t",Tref_T);
    
    
        // here abhaya changed 0x41 to 0x09 and enable 2,3,4 GPIO as well//
    
        WriteReg(0, GPIO_CONF1, 0x09, 1, FRMWRT_STK_W); //-   Configure GPIO1 for temperature measurement
        WriteReg(0, GPIO_CONF2, 0x09, 1, FRMWRT_STK_W); //-   Configure GPIO2 for temperature measurement
        WriteReg(0, GPIO_CONF3, 0x09, 1, FRMWRT_STK_W); //-   Configure GPIO3 for temperature measurement
        WriteReg(0, GPIO_CONF4, 0x09, 1, FRMWRT_STK_W); //-   Configure GPIO4 for temperature measurement
    
    
    
    
    
        WriteReg(0, OTUT_THRESH, 0xFF, 1, FRMWRT_STK_W);  //
        WriteReg(0, OTUT_CTRL, 0b01, 1, FRMWRT_STK_W); //

    请确认此顺序是否正常?

    谢谢。此

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

    尊敬的 Abhaya:

    请将第1-5行移至第25行之后、因为应该在启用 ADC_GO 之前配置 GPIO 和 TSREF。

    此致、

    大卫

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

    我做了相应的更改、但仍然得到 TSREF 值为0。

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

    尊敬的 Abhaya:

    您能否在电路板上使用万用表确认 TSREF 为5V? 如果使用万用表 TSREF 的读数为5V、请尝试在启用 TSREF 后添加2ms 的延迟。

    此致、

    大卫

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

    好的、肯定我会尝试它。

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

    万用表中也显示0V。

    应该怎么做?

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

    尊敬的 Abhaya:

    您的器件似乎未与 BQ79656通信。 以下是我需要的两个项目、它们可以提供帮助:

    1.设置:可以发送有关微控制器如何连接到 BQ79656的图片吗?

    2.波形:能否发送 BQ79656板上的 RX 和 TX 的示波器屏幕截图? 此屏幕截图应记录您在 RX 线路上发送的0x301读取帧以及在 TX 线路上发送的 BQ79656的响应。

    此致、

    大卫

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

    好的、我会执行它。 请给我一点时间。

    谢谢你。