Other Parts Discussed in Thread: CC2533
hi,
我在使用cc2533的时候,在检测电池电压时,遇到些问题。
电压检测代码是从SDK里拷贝的,代码如下,我设置的电压监测只是 2.146v,用稳压源将电压跳到2.146v一下,能够监测出来。
设备做低温实验,-40度,放进低温箱两天发现有的设备打印电压低于2.146v,但是从高低温实验箱中取出,用电压表测电压,实际电压是2.8V左右,
由于我们设备低电压时, LED会闪烁,此时LED亮度比较亮,感觉电压高于2.146V(我用稳压源调到2.146V时,LED亮度会很弱)。
请问cc2533电压检测会受温度影响吗?还是我的代码有问题?
代码里调用HalBatMonRead(HAL_BATMON_MIN_POLL); 进行低电压检测
uint8 HalBatMonRead(uint8 vddMask)
{
uint8 rtrn = TRUE;
#if (HAL_BATMON == TRUE)
MONMUX = 0; // Setup BATTMON mux to measure AVDD5.
BATMON = vddMask;
halMcuWaitUs(2); // Wait at least 2 us before reading BATTMON_OUT.
rtrn = (BATMON & BATTMON_OUT) ? TRUE : FALSE;
BATMON = BATTMON_PD; // Turn off for power saving.
#endif
return rtrn;
}
//user guid P142
/*
------------- step 0.024
3: 1.93v
4: 1.954v
5: 1.978v
6: 2.002v
7: 2.026v
8: 2.050v
9: 2.074v
10: 2.098v
11: 2.122v
12: 2.146v
13: 2.170v
14: 2.194v
15: 2.218v
16: 2.242v
17: 2.266v
18: 2.290v
19: 2.314v
20: 2.338v
21: 2.362v
22: 2.386v
23: 2.410v
24: 2.434v
25: 2.458v
--------------- step 0.169
26: 2.482v
27: 2.651v
28: 2.820v
29: 2.989v
30: 3.158v
31: 3.327v
*/
#define HAL_BATMON_MIN_POLL (12 << 1)