工具/软件:
尊敬的专家:
我们在三个内部温度传感器中的一个上遇到了奇怪的温度读数。
该器件被置于一个温度室中、然后冷却至–40°C。
启动时、软件:
- 从 OTP 读取温度校准值并计算斜率和偏移量(1-18 行)、如应用手册 SPNA216–2016 年 1 月所述
- 配置和测试内部 ADC 并在 IOMM 中启用内部温度传感器
- 读取 ADC1[31](=ITMP1)、ADC2[30](=ITMP3) 和 ADC2[31](=ITMP2)
现在传感器 2 读数(第 25 行)与实际温度值–49°C 的–40°C 预期温度相差太远。
此值是使用已应用的校正值计算的。
我们的假设是、传感器读数在整个温度范围内的精度约为+/–2.5K
=> 问题 (a): 即使应用了校准校正、所有传感器的此假设是否正确?
或者、这只在手册中建议的某种“2oo3 投票“之后才有效吗?
由于 233K (–40°C)(线路 3、9、15)有校准值、因此我们还转储 ADC 读数的原始值(线路 20-22):
[2/3]233K = 1531/0x5FB RAW <=> ITMP119raw = 0x000005FE ==> DIFF:+3.
[2/3]233K = 1555/0x613 RAW <= ITMP2RAW = 0x000005DF => DIFF:–52
[2/3]233K = 1538/0x602 RAW <= ITMP3RAW = 0x0000060C =>差分:+10
传感器 1 和 3 读数略高于其校准值、这是合理的、因为该器件会自发热。
另一方面、传感器 2 比校准值低 52 位、看起来有点奇怪。
=>问题 (b): 原始温度读数如何低于校准值?
目前、我们只使用一台设备就会遇到此问题、但我们希望确保这不是任何类型的一般误解或错误。
我们测试了另外 5 个更接近校准值的器件,但由于传感器完全集成在芯片上,很难想象导致芯片故障的原因。
内部 ADC 连接了其他信号、这些信号似乎读数有效。
此外、内部 ADC 测试程序运行时不会指示任何问题。
因此、据我们所知、模数转换本身似乎运行正常。
- ADC 基时钟为 1/93、3ns (VCLK=ADC 75MHz 且预分频器设置为 6 (+1))
- 采样周期= 255 (+2 => 257 * 93、3ns = 24us)
- 放电周期= 255 (* 93、3ns = 23、8us)
[2025-08-15 09:58:22.450] [001] ===== [0] ============================================= [2025-08-15 09:58:22.450] [002] [1/3]303K = 1934/0x78E raw [2025-08-15 09:58:22.450] [003] [2/3]233K = 1531/0x5FB raw [2025-08-15 09:58:22.450] [004] [3/3]398K = 2486/0x9B6 raw [2025-08-15 09:58:22.450] [005] slope =0.173 [2025-08-15 09:58:22.450] [006] offset=180.701 [2025-08-15 09:58:22.450] [007] ===== [1] ============================================= [2025-08-15 09:58:22.450] [008] [1/3]303K = 1965/0x7AD raw [2025-08-15 09:58:22.450] [009] [2/3]233K = 1555/0x613 raw [2025-08-15 09:58:22.450] [010] [3/3]398K = 2496/0x9C0 raw [2025-08-15 09:58:22.450] [011] slope =0.176 [2025-08-15 09:58:22.450] [012] offset=231.065 [2025-08-15 09:58:22.450] [013] ===== [2] ============================================= [2025-08-15 09:58:22.450] [014] [1/3]303K = 1945/0x799 raw [2025-08-15 09:58:22.450] [015] [2/3]233K = 1538/0x602 raw [2025-08-15 09:58:22.450] [016] [3/3]398K = 2492/0x9BC raw [2025-08-15 09:58:22.450] [017] slope =0.173 [2025-08-15 09:58:22.450] [018] offset=191.383 [2025-08-15 09:58:22.450] [019] [2025-08-15 09:58:22.450] [020] ITMP1raw = 0x000005FE [2025-08-15 09:58:22.450] [021] ITMP2raw = 0x000005DF [2025-08-15 09:58:22.450] [022] ITMP3raw = 0x0000060C [2025-08-15 09:58:22.450] [023] [2025-08-15 09:58:22.450] [024] ITMP1 = 234.542 K (==> -38,608°C) [2025-08-15 09:58:22.450] [025] ITMP2 = 224.029 K (==> -49,121°C) [2025-08-15 09:58:22.450] [026] ITMP3 = 235.472 K (==> -37,678°C) [2025-08-15 09:58:22.450] [027] DIF13 = 0.930 K [2025-08-15 09:58:22.450] [028] DIF23 = 11.443 K
谢谢、此致、
最大值

