嗨、大家好
我们可以在"bq769x0_I2C_SAMPLE_CODE_带_CRC"中看到
OVTrip 的计算结果是 OV_THRESH_base(0x2008)和 UV_THRESH_base(0x1000。
但是、我们无法在 有关 OV_TRIP_FULL 的数据表中看到 OV_THRESH_BASE 和+ 0.5将用于何处。
那么、我想知道我们将遵循哪一条规则、示例代码或数据表?
bqMaximo_Ctrl_G2553.h
#define OV_THRESH_base 0x2008
#define UV_THRESH_base 0x1000
Registers.OVTrip =(unsigned char)(((unsigned short)(((OVPThreshold - Registers.ADCOffset)/增益+ 0.5)- OV_THRESH_base)>> 4)& 0xFF);
Registers.UVTrip =(unsigned char)((((unsigned short)((UVPThreshold - Registers.ADCOffset)/增益+ 0.5)- UV_THRESH_base)>> 4)& 0xFF);
bq769x0数据表:
3.计算满足所需 OV 和 UV 跳闸阈值所需的完整14位 ADC 值、如下所示:
(a) OV_TRIP_FULL =(OV–ADCOFFSET)÷ADCGAIN
(b) UV_TRIP_FULL =(UV–ADCOFFSET)÷ADCGAIN
4.从完整的14位值中删除上部2 MSB 和下部4 LSB、仅保留其余部分
中间8位。 这可以通过移动 OV_TRIP_FULL 和 UV_TRIP_FULL 二进制值4来实现
并删除高2 MSB。
谢谢