您好、香榭丽舍
F28004x 数据表显示了内部温度传感器的特性、如下表所示。 在此表中、测试条件仅为外部基准。
这是否意味着内部 ADC 基准不能用于感应内部温度?
此外,库中的 ADC_getTemperatureC()函数还具有以下注释:温度传感器仅支持外部基准模式。 是这样吗?
谢谢、
Steve
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好、香榭丽舍
F28004x 数据表显示了内部温度传感器的特性、如下表所示。 在此表中、测试条件仅为外部基准。
这是否意味着内部 ADC 基准不能用于感应内部温度?
此外,库中的 ADC_getTemperatureC()函数还具有以下注释:温度传感器仅支持外部基准模式。 是这样吗?
谢谢、
Steve
您好、Steve、
您可以将温度传感器与 INTREF 配合使用;只需输入与您正在使用的 INTREF 范围等效的"Vref"值(3.3或2.5)。
由于测试条件使用具有较低增益误差的外部基准、因此您可以预期使用内部基准时性能会降低。 灵敏度约为4mV/deg。 C、因此额外的40LSB 增益误差@ 3.3V VREF = 32mV =大约8度。 极端温度下的额外误差 C (这可能相当悲观)。
Devin、
感谢您的回答。
我还有一个问题。
ADC_getTemperatureC ()函 数仅引用 外部基准偏移(ADC_EXT_REF_TSOFFSET)和斜率值(ADC_EXT_REF_TSSLOPE)。 您评论说 、只应使用 INTREF 范围设置'Vref'值、而不会更改 用于内部 ADC 基准的 ADC_getTemperatureC ()函数。
在 adc.h 文件中、温度传感器有四个定义。 我认为 两 个定义(ADC_INT_REF_TSSLOPE 和 ADC_INT_REF_TSOFFSET)在任何函数和条件下都不使用。
对吗?
#define ADC_INT_REF_TSSLOPE (*(Int16_t *) 0x705BD)
#define ADC_INT_REF_TSOFFSET (*(Int16_t *) 0x705BE)
#define ADC_EXT_REF_TSSLOPE (*(Int16_t *) 0x705BF)
#define ADC_EXT_REF_TSOFFSET (*(Int16_t *) 0x705C0)