土壤传感器实物图
![](https://img-blog.csdnimg.cn/ece92384175045d19be1cbdb78151ddf.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6YeR6buE6Imy6JGh6JCE55CD6I-MMTkwNA==,size_19,color_FFFFFF,t_70,g_se,x_16)
它总共有四个引脚: VCC引脚:接电源正极 GND引脚:接电源负极 A0引脚:输出土壤湿度传感器的模拟电压值,输出范围为0-1023 D0引脚:输出土壤湿度传感器的开关量值,值为0,和1,开关量的变换值由蓝色顶调电位器进行控制。
ESP8266实物图
![](https://img-blog.csdnimg.cn/9337b6d0fadc424b95468d40dc6f7f9f.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6YeR6buE6Imy6JGh6JCE55CD6I-MMTkwNA==,size_14,color_FFFFFF,t_70,g_se,x_16)
![](https://img-blog.csdnimg.cn/f261c62a683a4d0bb6d3465f34d0d779.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6YeR6buE6Imy6JGh6JCE55CD6I-MMTkwNA==,size_16,color_FFFFFF,t_70,g_se,x_16)
实物接线图
![](https://img-blog.csdnimg.cn/8b3a78d160264a76ab23965cd5ddb955.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6YeR6buE6Imy6JGh6JCE55CD6I-MMTkwNA==,size_19,color_FFFFFF,t_70,g_se,x_16)
#define PIN_AO A0 //土壤传感器AO接ESP8266引脚A0
//#define PIN_DO 4 //湿度高于设定值时,DO输出高电平,模块提示灯亮
int M0 = 1024; //在空气中AO读取的值最大为1024,代表干燥时的读数
int M1 = 464; //浸泡在水里的最小值 464(最小值会改变),代表100%湿度
void setup() {
pinMode(PIN_AO, INPUT);
// pinMode(PIN_DO, INPUT);
Serial.begin(9600);
}
void loop() {
Serial.print("AO=");
Serial.println(analogRead(PIN_AO));
// Serial.print("DO=");
// Serial.println(digitalRead(PIN_DO));
float HUMI = (M0 - analogRead(PIN_AO)) / ((M0 - M1) / 100); //将湿度模拟量转换成数字量
Serial.print("HUMI= ");
Serial.print(HUMI);
Serial.println("% ");
delay(1000);
}
串口输出结果
![](https://img-blog.csdnimg.cn/9fff8dc242b24c29a8ac4ea1302caf2b.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6YeR6buE6Imy6JGh6JCE55CD6I-MMTkwNA==,size_18,color_FFFFFF,t_70,g_se,x_16)
|