AD转换中知道数字量计算模拟量或温度 您所在的位置:网站首页 温度转换公式 AD转换中知道数字量计算模拟量或温度

AD转换中知道数字量计算模拟量或温度

2024-04-04 19:28| 来源: 网络整理| 查看: 265

看你的AD设置的是几位的,如果是N位(采样分辨率)(在stm32中adc为十二位),假定你AD采集的数字量为M,基准电压为V则模拟量为: V乘以M除以2的N次方。 假设V为3.3,N为8,则模拟量为:3.3*M/256 使用标度标度变换公式,将数字量转换成带有物理单位的实际值。 例如: 假设温度检测传感器测量温度范围是A0~Am,转换后的电压经 AD转换器转换的数字量是8位的,则其范围是00H~OFFH。 则如果某一时刻,AD转换器转换的数字量是N,那么测量的实际温度 为A, 根据线性传感器、AD转换器转换器的转换信号的关系:可以推出 A=(Am-A0)*N/(255-0)+A0

温度传感器可以用来测量器件周围的温度(T A )。 温度传感器在内部和ADC1_IN16输入通道相连接,此通道把传感器输出的电压转换成数字值。 温度传感器模拟输入推荐采样时间是17.1μs

读温度 为使用传感器: 1. 选择ADC1_IN16输入通道 2. 选择采样时间为17.1 μs 3. 设置ADC控制寄存器2(ADC_CR2)的TSVREFE位,以唤醒关电模式下的温度传感器 4. 通过设置ADON位启动ADC转换(或用外部触发) 5. 读ADC数据寄存器上的V SENSE 数据结果 6. 利用下列公式得出温度 温度(°C) = {(V 25 - V SENSE ) / Avg_Slope} + 25 这里: V 25 = V SENSE 在25 °C时的数值 Avg_Slope = 温度与V SENSE 曲线的平均斜率(单位为mV/ °C 或 μV/ °C) 参考数据手册的电气特性章节中V 25 和Avg_Slope的实际值。 注意: 传感器从关电模式唤醒后到可以输出正确水平的 V SENSE 前,有一个建立时间。 ADC 在上电后也 有一个建立时间,因此为了缩短延时,应该同时设置 ADON 和 TSVREFE 位。

内部温度传感器更适合于检测温度的变化,而不是测量绝对的温度。如果需要测量精确的温 度,应该使用一个外置的温度传感器。

STM32 有一个内部的温度传感器,可以用来测量 CPU 及周围的温度(TA)。该温度传感器 在内部和 ADCx_IN16 输入通道相连接,此通道把传感器输出的电压转换成数字值。温度传感 器模拟输入推荐采样时间是 17.1μs。 STM32 的内部温度传感器支持的温度范围为:-40~125 度。精度比较差,为±1.5℃左右。

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

STM32 的内部温度传感器固定的连接在 ADC 的通道 16 上,所以,我们在设 置好 ADC 之后只要读取通道 16 的值,就是温度传感器返回来的电压值了。根据这个值,我们 就可以计算出当前温度。计算公式如下: T(℃)={(V25-Vsense)/Avg_Slope}+25

上式中: V25=Vsense 在 25 度时的数值(典型值为:1.43)。 Avg_Slope=温度与 Vsense 曲线的平均斜率(单位为 mv/℃或 uv/℃)(典型值为 4.3Mv/℃)

​​​​​​​



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有