用内部温度传感器测出来误差超大?
加了校准值也不准,差到5度以上,是不是采样顺序有讲究?不建议当做精密测温,只做参考。 U5的温度传感器需要软件线性修正。 你有没有参考TS_CAL寄存器? 用的是Vrefint来反算电压了吗? 我觉得采样时间至少要加到640 cycles。 有没有做ADC校准再测? 加几个点做个线性拟合可能更稳。 看看ADC的分辨率设对了吗? U5的低功耗模式下温度会偏一点。 跑一下温漂图就知道趋势了。 STM32U5内部温度传感器本身精度有限,通常误差范围在±1.5℃至±5℃之间,设计初衷是用于监测温度变化而非高精度绝对温度测量
芯片出厂时存储的校准值(TS_CAL1、TS_CAL2)是基于特定条件(如3V参考电压、14位ADC)下测得,若实际使用条件(如3.3V参考电压、12位ADC)与之不符,需对校准值进行转换 传感器位于晶圆上,对环境温度变化的响应存在热滞后,且易受芯片自身发热影响
检查温度传感器通道(如ADC1_IN19)是否正确配置,避免与其他通道冲突
校准值通常对应30℃和130℃两个温度点,中间温度点的测量误差可能因线性度不足而增大
ADC采样时间过短,导致采样值不准确。内部温度传感器输出信号较弱,需较长的采样时间(如814个ADC时钟周期)以确保稳定转换。
可能是ADC参考电压配置错误,未根据实际硬件调整(如使用3.3V参考电压时需重新计算校准值
未正确读取校准值存储地址,或读取后未进行位宽转换(如14位校准值用于12位ADC时需右移2位
温度计算公式的参数(如校准温度点、校准值)使用错误,导致计算结果偏离实际
页:
[1]