通过ESP8266调节继电器时间

ε祈祈猫儿з 提交于 2019-12-02 02:33:53

通过ESP8266调节继电器时间

 

1、继电器选择(可调节时间的继电器)

2、继电器与esp8266的接线【set --- D6,UP --- D5,DOWN --- D1】

3、Arduino 程序

void changeTime(int change_type) {
  // 长按 SET 2s
  pinMode(D6, OUTPUT);
  digitalWrite(D6, LOW);
  delay(2300);
  digitalWrite(D6, HIGH);
  Serial.println("长按 SET 2s 。。。 ");
  pinMode(D6, INPUT);
  delay(800);

  // 按一下 SET
  pinMode(D6, OUTPUT);
  digitalWrite(D6, LOW);
  delay(200);
  digitalWrite(D6, HIGH);
  Serial.println("按一下 SET 。。。 ");
  pinMode(D6, INPUT);

  // 等 2s
  delay(4000);
  Serial.println("等 3s 。。。 ");

  // 按一下 UP
  if (change_type == 1) {
    pinMode(D5, OUTPUT);
    digitalWrite(D5, LOW);
    delay(200);
    digitalWrite(D5, HIGH);
    pinMode(D5, INPUT);
    delay(1200);
  // 按一下 DOWN
  } else if (change_type == 2) {
    pinMode(D1, OUTPUT);
    digitalWrite(D1, LOW);
    delay(200);
    digitalWrite(D1, HIGH);
    pinMode(D1, INPUT);
    delay(1200);
  }

  // 长按 SET 2s
  pinMode(D6, OUTPUT);
  digitalWrite(D6, LOW);
  delay(2200);
  digitalWrite(D6, HIGH);
  Serial.println("长按 SET 2s 。。。 ");
  pinMode(D6, INPUT);
  delay(800);

  // 按一下 SET
  pinMode(D6, OUTPUT);
  digitalWrite(D6, LOW);
  delay(200);
  digitalWrite(D6, HIGH);
  Serial.println("按一下 SET 。。。 ");
  pinMode(D6, INPUT);

  // END Program
  Serial.print("程序结束(电压):");
  Serial.println(ESP.getVcc());
}

void setup(){
  Serial.begin(115200);
}

void loop(){
  if(Serial.available()>0)
  {
    char c=Serial.read();
    if (c == 'u') {
      Serial.println("Begin UP");
      changeTime(1);
    } else if (c == 'd') {
      Serial.println("Begin DOWN");
      changeTime(2);
    }
  }
}

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!