工具/软件:
您好:
我在从连接到热敏电阻的 TI BQ76972 读取准确(甚至接近温度)时遇到问题。 我已经尽力遵循 TI 的各种文档、但我仍然遇到问题。 背景:
我将使用 BQ76972 测量 Panasonic ERTJ1VR153J 热敏电阻(25°C 时标称值为 15k Ω)。 我将多个这些线路连接到输入端(例如 TS1)。 我已将 TS1 配置为热敏电阻输入、具有 18k 温度模型和 18k 上拉值。
我使用 TI 的计算器来获取多项式值(输入和输出如下所示)。
TI 计算器输入 :我使用下面的电阻值与温度的查找表来输入 TI 计算器:
'config.txt':
ProcessingType=7
Rpullup=18k
'thermistor.txt':
电阻值(Ω)
646500
456750
326400
235950
172200
127290
94500
70950
53730
41010.
31530
24435
19080
15000
11881.5
9474
7600.5
6135.
4978.5.
4063.5
3333
2748
2277.
1896
1585.5.
#温度(脱脂)
–40°C
–35
–30
–25
–20
–15
–10
–5
0
5.
10.
15
20
25
30
35
40
45
50
55
60
65
70
75
80
TI 计算器输出:
**************************************
搜索完成、bestmaxerr = 1.19999999999886
Best A [A1 A2 A3 A4 A5]=[–13966 18266 –5907 15580 2686]
Best B [B1 B2 B3 B4]=[–5859 9033 –5641 4627]
ADC0 = 11703
************************************
然后、我使用以下结构将这些值以二进制补码形式写入 18k 系数寄存器(使用 2 字节 I2C 写入、在芯片的 Config_Mode 中获取“ACK")“):
然后、我等待~10ms、然后成功读回这些相同的系数。
之后、我完成初始化并以 1Hz 的间隔读取热敏电阻值 — 生成的值将通过以下代码进行转换:
我得到的“温度“约为 533 度 C。从读取函数返回的两字节十六进制值为 0x1F83。
我有什么不对的吗? 我相信我已经遵循了 TI 的文档、充分说明了如何使用 18k 温度模型/热敏电阻。 是否有更简单的方法来获得不太精确的温度? 由于 TI 系数编译器的专有性质、我没有看到更简单和迭代的方法。
谢谢、
Justin R