Files
Dorm-Air-Conditioner-Smart-…/Dorm-Air-Conditioner-Smart-Controller.ino
2025-09-20 16:57:16 +08:00

78 lines
1.8 KiB
C++

//使用preferences作为数据持久化方案,类似于本项目的数据库
#include <Preferences.h>
#include "DHT11control.h"
#include "RTC_Module.h"
#include <RtcDS1302.h>
#include "LunarCalendarAndHolidayJudge.h"
#include "core.h"
ThreeWire myWire(4,5,2);
RtcDS1302<ThreeWire> Rtc(myWire);
void setup() {
// 初始化串口通信
Serial.begin(115200);
Preferences prefs; // 声明Preferences对象
//打开preferences命名空间:DACSC
prefs.begin("DACSC");
// 启动DHT传感器
dht.begin();
// 启动ds1302
setupRTC();
// 初始化核心模块
Serial.println("正在初始化智能空调控制系统...");
if (initializeCore()) {
Serial.println("系统初始化成功!");
} else {
Serial.println("系统初始化失败!");
}
}
void loop() {
// 调用核心判断函数
int decision = judge();
// 打印决策结果
Serial.println("========================================");
Serial.print("智能决策结果: ");
switch(decision) {
case JUDGE_NO_ACTION:
Serial.println("无需操作 - 当前环境正常");
break;
case JUDGE_TURN_ON_COOLING:
Serial.println("开启制冷模式 - 检测到需要降温");
break;
case JUDGE_TURN_ON_HEATING:
Serial.println("开启制暖模式 - 检测到需要升温");
break;
case JUDGE_TURN_OFF_AC:
Serial.println("关闭空调 - 检测到无人或离开");
break;
case JUDGE_ADJUST_TEMP:
Serial.println("打开除湿 - 优化舒适度");
break;
case JUDGE_ERROR:
Serial.println("系统错误 - 请检查传感器连接");
break;
default:
Serial.println("未知状态");
break;
}
Serial.println("========================================");
Serial.println();
// 等待30秒后再次执行判断
delay(5000);
}