Difference between revisions of "Esp32 - Blinky"

From Open Hard- & Software
Jump to navigation Jump to search
Line 3: Line 3:
== Übersicht ==
== Übersicht ==
* Einfaches Beispiel zur Programmierung und zum Test eines Esp32-MicroControllers.
* Einfaches Beispiel zur Programmierung und zum Test eines Esp32-MicroControllers.
* Typische Hardware: Esp32UnoBoard mit LedSystem.
* Typische Hardware: Esp32UnoBoard mit Serieller-Usb-Schnittstelle.
* Funktion: nach dem Reset schaltet der Esp32 für eine Pulszeit '''Tw''' die LedSystem ein und für eine Totzeit '''Td''' aus.
* Funktion: nach dem Reset schreibt der Esp32 alle 1000ms die Message "Hello World!" über die Serielle Schnittstelle. Der Benutzer empfängt diese Nachricht mit einem Terminal-Programm.


== Vorgabe ==
* Im Arduino-Projekt [[Esp32 - HelloWorld|Esp32HelloWorld]] enthält die System-Konstante '''TIMESPAN_SERIALOUT''' die Vorgabezeit der periodischen Seriellen Ausgabe.
== Quelltext ==


== Vorgabe ==
<syntaxhighlight lang="c++" line>
* Ergänzung der Hardware: 8x Treiberstufe und 8x Relais mit Netzteil auf Platte / in Gehäuse setzen.  
//-----------------------------------------
* IP-Maske des Lan-Netzes herausfinden - typisch '''192.168.178.xxx'''
//  Application: Esp32Blinky
* Im Arduino-Projekt die '''LanConfiguration.h''' aktualisieren.
// Version....: 01V01
//  DateTime...: 2110141741
//  Author.....: OMdevelop
//-----------------------------------------
//
//-----------------------------------------
//  Definition
//-----------------------------------------
const int PIN_LEDSYSTEM = 2;
//
const int PERIOD_LEDSYSTEM = 1000; // [ms]
//
//
//-----------------------------------------
//  Main - Setup
//-----------------------------------------
void setup()
{ // Configuration LedSystem
  pinMode(PIN_LEDSYSTEM, OUTPUT);
}
//
//-----------------------------------------
//  Main - Loop
//-----------------------------------------
void loop()
{ // LedSytem ON
  digitalWrite(PIN_LEDSYSTEM, HIGH);
  delay(PERIOD_LEDSYSTEM >> 1);
  // LedSytem OFF
  digitalWrite(PIN_LEDSYSTEM, LOW);
  delay(PERIOD_LEDSYSTEM >> 1);
}


</syntaxhighlight>


== Hardware ==
== Hardware ==
* [[Esp32UnoBoard|Esp32UnoBoard]], allgemein jedes Esp32Board mit integrierter LedSystem
* [[Esp32UnoBoard|Esp32UnoBoard]], allgemein jedes Esp32Board mit Serieller USB-Schnittstelle


[[File:2110122136_HardwareEsp32LanPowerSwitch.png]]
[[File:2110122136_HardwareEsp32LanPowerSwitch.png]] (esp32unoboard)




== Software ==  
== Software ==  
* [[ArduinoIDE | ArduinoIDE]] Compiler-Benutzeroberfläche (Homepage: [https://www.arduino.cc Arduino])
Wahlweise
* [[VisualStudioCode|VisualStudioCode]] Compiler-Benutzeroberfläche (Homepage: [https://www.code.visualstudio.com VisualStudioCode])
* [[ArduinoIDE | ArduinoIDE]] (Compiler-Benutzeroberfläche (Homepage: [https://www.arduino.cc Arduino]))
 
* mit Terminal innerhalb der ArduinoIDE
oder
* [[VisualStudioCode|VisualStudioCode]] (Compiler-Benutzeroberfläche (Homepage: [https://www.code.visualstudio.com VisualStudioCode]))
* mit Terminal innerhalb der IDE von VSCode
oder einem aktiven Terminal eigener Wahl
* [[HTerm | HTerm]] (Terminal IDE (Homepage: [https://www.der-hammer.info/pages/terminal.html Der Hammer])).


== Download ==
== Download ==

Revision as of 17:47, 14 October 2021

WebSite: OH&SW || MediaWiki: - Software - Hardware - Elektronik - Mechanik - Anhang

Übersicht

  • Einfaches Beispiel zur Programmierung und zum Test eines Esp32-MicroControllers.
  • Typische Hardware: Esp32UnoBoard mit Serieller-Usb-Schnittstelle.
  • Funktion: nach dem Reset schreibt der Esp32 alle 1000ms die Message "Hello World!" über die Serielle Schnittstelle. Der Benutzer empfängt diese Nachricht mit einem Terminal-Programm.

Vorgabe

  • Im Arduino-Projekt Esp32HelloWorld enthält die System-Konstante TIMESPAN_SERIALOUT die Vorgabezeit der periodischen Seriellen Ausgabe.

Quelltext

//-----------------------------------------
//  Application: Esp32Blinky
//  Version....: 01V01
//  DateTime...: 2110141741
//  Author.....: OMdevelop
//-----------------------------------------
//
//-----------------------------------------
//  Definition
//-----------------------------------------
const int PIN_LEDSYSTEM = 2;
//
const int PERIOD_LEDSYSTEM = 1000; // [ms]
//
//
//-----------------------------------------
//  Main - Setup
//-----------------------------------------
void setup() 
{ // Configuration LedSystem
  pinMode(PIN_LEDSYSTEM, OUTPUT);
}
//
//-----------------------------------------
//  Main - Loop
//-----------------------------------------
void loop() 
{ // LedSytem ON
  digitalWrite(PIN_LEDSYSTEM, HIGH);
  delay(PERIOD_LEDSYSTEM >> 1);
  // LedSytem OFF
  digitalWrite(PIN_LEDSYSTEM, LOW);
  delay(PERIOD_LEDSYSTEM >> 1);
}

Hardware

  • Esp32UnoBoard, allgemein jedes Esp32Board mit Serieller USB-Schnittstelle

2110122136 HardwareEsp32LanPowerSwitch.png (esp32unoboard)


Software

Wahlweise

  • ArduinoIDE (Compiler-Benutzeroberfläche (Homepage: Arduino))
  • mit Terminal innerhalb der ArduinoIDE

oder

oder einem aktiven Terminal eigener Wahl

Download

ArduinoIDE(C-Code): 21xxxxxxxx_Esp32ArdBlinky_01V01.zip

ArduinoIDE(Cpp-Code): 21xxxxxxxx_Esp32ArdBlinky_01V02.zip

VSCode(C-Code): 21xxxxxxxx_Esp32VscBlinky_02V01.zip

VSCode(Cpp-Code): 21xxxxxxxx_Esp32VscBlinky_02V01.zip


Datum Uhrzeit Projekt Version Download
211012 2115 Esp32LanPowerSwitch 01V03 2110122115_Esp32LanPowerSwitch_01V03.zip



WebSite:OH&SW || MediaWiki - Software - Hardware - Elektronik - Mechanik - Anhang || Datenschutz - Impressum