MCU微课堂|CKS32F107xx ADC(四)

内部温度传感器

CKS32F107xx系列有一个内部的温度传感器,可以用来测量MCU及周围的温度(TA)。该温度传感器在内部和ADCx_IN16输入通道相连接,此通道把传感器输出的电压转换成数字值。温度传感器模拟输入推荐采样时间是17.1μs。 图1是温度传感器的方框图。

2.png

图1 温度传感器方框图

CKS32F107内部温度传感器的使用很简单,只要设置一下内部ADC,并激活其内部通道就差不多了。接下来我们介绍一下和温度传感器设置相关的2个地方。

第一个地方,我们要使用CKS32F107的内部温度传感器,必须先激活ADC的内部通道,这里通过ADC_CR2的AWDEN位(bit23)设置。设置该位为1则启用内部温度传感器。 

第二个地方,CKS32F107的内部温度传感器固定的连接在ADC 的通道16上,所以,我们在设置好ADC之后只要读取通道16的值,就是温度传感器返回来的电压值了。根据这个值,我们就可以计算出当前温度。计算公式如下:

3.png

上式中:V25为Vsense在25℃时的数值(典型值为:1.455)。Avg_Slope为温度与Vsense曲线的平均斜率(单位为mV/℃或 uv/℃)(典型值为3.3mV/℃)。 利用以上公式,我们就可以方便的计算出当前温度传感器的温度了。现在,我们就可以总结一下CKS3F107内部温度传感器使用的步骤了,如下:

1) 设置 ADC,开启内部温度传感器。

关于如何设置 ADC,在ADC采集的那一节已经介绍。不同的是上一节是读取外部通道的值,而内部温度传感器相当于把通道端口连接在内部温度传感器上。所以我们要开启内部温度传感器功能,使用如下函数:

ADC_TempSensorVrefintCmd(ENABLE);

2)读取通道16的AD值,计算结果。 在设置完之后,我们就可以读取温度传感器的电压值了,得到该值就可以用上面的公式计算温度值。

具体代码详见例程。

相关阅读:

CKS32F107xx系列 ADC(一)

CKS32F107xx系列 ADC(二)

MCU微课堂|CKS32F107xx ADC(三)

来源:中科芯MCU

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。