rk817 电池温度检测调试记录
一、基础实现参考
对于rk817 电池温度检测基本原理可参考下面2篇文章,可大致搞明白整个原理及实现方法
https://blog.csdn.net/qq_37858386/article/details/125201716
https://blog.csdn.net/weixin_68294039/article/details/124251834
二、实现过程中遇到的问题及解决方案
1:NTC阻值计算公式及原理
在上面2篇文章中未详细介绍NTC阻值(res)计算原理
其中一篇文章计算方法如下:
val = rk817_bat_field_read(battery, BAT_TS_H) << 8;
val |= rk817_bat_field_read(battery, BAT_TS_L);
res=(val * 12 *10000)/(0XFFFF+1);//res=(val * 12 1000000)/((0XFFFF+1)1010);
另外一篇文章计算如下:
val = rk817_bat_field_read(battery, BAT_TS_H) << 8;
val |= rk817_bat_field_read(battery, BAT_TS_L);
val = val18; //
res = val; //扩大10倍
rk给的patch计算方法如下:
temp_value = rk817_bat_get_bat_ts(battery);
adc_to_vol = temp_value * 1200 / 65536;
if