多种传感器输出的模拟量转换

目录

内部温度传感器与参照电压

传感器

光敏电阻

热敏电阻

反射式红外

对射式红外

驱动代码

Sensor.h

Sensor.c

AD.h 

AD.c

main.c


内部温度传感器与参照电压

STM32有一个内部的温度传感器,可以用来测量CPU及周围的温度。

该温度传感器在内部和ADCx_IN16输入通道相连接,此通道把传感器输出的电压转换成数字值。

支持的温度范围为:-40~125度。精度比较差,为±1.5℃左右。    

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

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

ADC_TempSensorVrefintCmd(ENABLE);

温度传感器输出电压随温度线性变化,计算公式如下:   

 T(℃)={(V25-Vsense)/Avg_Slope}+25

上式中:  

V25=Vsense在25度时的数值(典型值为:1.43V)。     

Avg_Slope=温度与Vsense曲线的平均斜率(单位为mv/℃或uv/℃)(典型值为4.3mv/℃) 

              内部温度传感器温度和电压关系图

获取温度步骤

传感器

电位器

蓝白电位器是一种可调电阻器,通过旋转它的旋钮,可以调节电阻器的阻值,从而改变输出电压。

传感器模块:传感器元件(光敏电阻/热敏电阻/红外接收管等)的电阻会随外界模拟量的变化而变化,通过与定值电阻分压即可得到模拟电压输出,再通过电压比较器进行二值化即可得到数字电压输出

从左到右依次为:光敏传感器,热敏传感器,对射式红外传感器,反射式红外传感器

对射式红外传感器模拟引脚输出无效,而且没有电位器

工作电压:DC3.3-5V,GND与单片机共地

本节将电位器,光敏传感器,热敏传感器,反射式红外传感器接入ADC对应的通道,传感器的数字输出比较简单就不写代码了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值