Zuletzt geändert: 2019-02-11

Esp32 EspBoardLed als Arduino Tab.

EspBoardLed.ino

// ****************************************************************
// Sketch Esp32 EspBoardLed Modular(Tab)
// created: Jens Fleischer, 2018-09-20
// last mod: Jens Fleischer, 2019-02-11
// For more information visit: https://fipsok.de
// ****************************************************************
// Hardware: Esp32
// Getestet auf: ESP32 Dev Module
/******************************************************************
  Copyright (c) 2018 Jens Fleischer. All rights reserved.

  This file is free software; you can redistribute it and/or
  modify it under the terms of the GNU Lesser General Public
  License as published by the Free Software Foundation; either
  version 2.1 of the License, or (at your option) any later version.
  This file is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  Lesser General Public License for more details.
*******************************************************************/
// Diese Version von EspBoardLed sollte als Tab eingebunden werden.
// #include <ESP32WebServer.h> muss im Haupttab aufgerufen werden
// Die Funktionalität des ESP32 Webservers ist erforderlich.
// Die Funktion "espboardLed();" muss im Setup aufgerufen werden.
/**************************************************************************************/

void espboardLed() {
  //pinMode(LED_BUILTIN, OUTPUT);     // OnBoardLed Esp32 -> Einkommentieren falls du diesen Tab ohne den Connect Tab benutzen möchtest
  server.on ( "/led", esp32Led );
}

void esp32Led() {                  //Html Seite
  if (server.hasArg("led")) {
    digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));        // LED umschalten
    DEBUG_F(digitalRead(LED_BUILTIN) ? "LED ist aus" : "LED ist an");
  }
  char temp[600];
  snprintf(temp, sizeof temp, R"(<!DOCTYPE html><html lang="de"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1">
<style>body{background-color:#a9a9a9;display:flex;flex-flow:column;align-items:center;}input{height:40px;width:120px;font-size:16px;}
[value$=n]{background-color:#adff2f;}[value$=s]{background-color:red;}</style><title>Onboard Led</title></head>
<body><h2>Onboard Led schalten</h2><h3>ESP32 Dev Module</h3><p>LED ist %s<p><form action="/led"><input name="led" type="submit" value="LED %s"></form>
</body></html>)", digitalRead(LED_BUILTIN) ? "an" : "aus", digitalRead(LED_BUILTIN) ? "Aus" : "Ein");
  server.send(200, "text/html", temp);
}

Zurück