热敏电阻传感器
热敏电阻模块对环境温度最敏感,一般用来检测周围环境的温度。模块在环境温度达不到设定阈值时,DO 口输出高电平,当外界环境温度超过设定阈值时,模块 D0 输出低电平;小板数字量输出 D0 可以与单片机直接相连,通过单片机来检测高低电平,由此来检测环境的温度改变;小板模拟量输出 AO 可以与开发板的模拟接口相连,通过 AD 转换,可以获得环境温度更精准的数值;
模块来源
规格参数
工作电压:3.3V-5V
灵敏度: 灵敏度可调(蓝色数字电位器调节)
输出方式:
DO接口为数字量输出
AO接口为模拟量输出
读取方式:ADC与数字量(0和1)
管脚数量:4 Pin(2.54mm间距排针)
硬件连接
- 传感器的Vcc端接开发板的5V供电;
- GND端接开发板的GND;
- AO(模拟信号输出端)接开发板的A0模拟输入引脚;
- DO(数字信号输出端)在本案例中为接,如有需要可以配置一个数字引脚,比如2号引脚设置为输入模式即可;
使用方法
- 计算电阻值:
- 当模拟输入端读取到电压时,需要将其转换为热敏电阻的电阻值。这通常涉及到使用模拟输入的读数(介于0到1023之间)和开发板的参考电压来计算分压器电路的中间电压。
- 接下来使用这个电压值和固定电阻的电阻值来通过欧姆定律计算热敏电阻的电阻值。
- 转换成温度:
- 使用热敏电阻的具体温度-电阻特性来将电阻值转换为温度。通常这涉及到查表或使用类似斯特曼方程(Steinhart-Hart equation)的公式来计算温度。
编写代码
c
/******************************************************************************
* 测试硬件:ColorEasyDuino开发板
* 版 本 号: V1.0
* 修改作者: www.lckfb.com
* 修改日期: 2024年04月09日
* 功能介绍:
*****************************************************************************
* 开发板软硬件资料与相关项目软硬件资料官网全部开源
* 开发板官网:www.lckfb.com
* 技术支持常驻论坛,任何技术问题欢迎随时交流学习
* 立创论坛:club.szlcsc.com
* 关注bilibili账号:【立创开发板】,掌握我们的最新动态!
* 不靠卖板赚钱,以培养中国工程师为己任
******************************************************************************/
const float BETA = 3950; // 热敏电阻的Beta系数
void setup() {
Serial.begin(9600);
}
void loop() {
int analogValue = analogRead(A0);
float celsius = 1 / (log(1 / (1023. / analogValue - 1)) / BETA + 1.0 / 298.15) - 273.15;
Serial.print("Temperature: ");
Serial.print(celsius);
Serial.println(" ℃");
delay(1000);
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28