Arduino 土壤湿度实时监测套件:LCD1602 显示版
项目简介
针对“总忘记给植物浇水”的痛点,本项目利用 SparkFun 土壤湿度传感器与 I2C LCD1602 打造一款即插即用的监测装置。通过 Circuito.io 自动生成原理图与接线指南,极大降低了初学者的硬件门槛。
核心组件
- Arduino UNO ×1
- SparkFun 土壤湿度传感器 (带螺丝端子) ×1:模拟输出,电极镀镍耐腐蚀
- Adafruit I2C LCD1602 (白字蓝背光) ×1:仅需 2 根信号线
- 面包板、跳线 若干
接线指南
土壤湿度传感器
GND → GND SIG → A3 VCC → 5V
I2C LCD1602
GND → GND SCL → A5 SDA → A4 VCC → 5V
核心代码(已优化版)
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// I2C 地址通常为 0x27 或 0x3F,可用 I2C 扫描器确认
LiquidCrystal_I2C lcd(0x27, 16, 2);
const uint8_t MOISTURE_PIN = A3;
const uint16_t READ_INTERVAL = 300; // ms
void setup() {
Serial.begin(9600);
lcd.init();
lcd.backlight();
lcd.print("Soil Moisture:");
delay(100);
}
void loop() {
int raw = analogRead(MOISTURE_PIN); // 0~1023,值越大越干
lcd.setCursor(0, 1);
lcd.print("Value: ");
lcd.print(raw);
lcd.print(" "); // 清除残留字符
Serial.print("Moisture: ");
Serial.println(raw);
delay(READ_INTERVAL);
}