Difference between revisions of "Esp32 - HelloWorld"

From Open Hard- & Software
Jump to navigation Jump to search
 
(17 intermediate revisions by 2 users not shown)
Line 7: Line 7:


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


== Quelltext ==
== Quelltext ==


<syntaxhighlight inline lang="css">font-family: 'Times New Roman', serif;</syntaxhighlight>
<syntaxhighlight lang="c++" line>
 
//-----------------------------------------
<code>
//  Application: Esp32ArdHelloWorld
//  Version....: 01V01
//  DateTime...: 2110142050
//  Author.....: OMdevelop
//-----------------------------------------
//
//-----------------------------------------
//  Definition
//-----------------------------------------
#define SerialTerminal Serial
//
//
const int PIN_LEDSYSTEM = 2;
const int TIMESPAN_SERIALOUT = 1000; // [ms]
//
//
const int PERIOD_LEDSYSTEM = 1000; // [ms]
//
//
//-----------------------------------------
//  Main - Setup
//-----------------------------------------
void setup()  
void setup()  
{ // Configuration LedSystem
{ // Configuration Serial
   pinMode(PIN_LEDSYSTEM, OUTPUT);
   SerialTerminal.begin(115200);
  delay(333);
  SerialTerminal.println("");
  SerialTerminal.println("**********************");
  SerialTerminal.println("* Esp32ArdHelloWorld *");
  SerialTerminal.println("* Version: 01V01    *");
  SerialTerminal.println("* Date...: 211014    *");
  SerialTerminal.println("* Time...: 2054      *");
  SerialTerminal.println("* Author.: OMdevelop *");
  SerialTerminal.println("**********************");
}
}
//
//
//-----------------------------------------
//  Main - Loop
//-----------------------------------------
void loop()  
void loop()  
{ // LedSytem ON
{ // print all seconds "Hello World!"
  digitalWrite(PIN_LEDSYSTEM, HIGH);
   delay(TIMESPAN_SERIALOUT);
   delay(PERIOD_LEDSYSTEM >> 1);
   SerialTerminal.println("Hello World!");
   // LedSytem OFF
  digitalWrite(PIN_LEDSYSTEM, LOW);
  delay(PERIOD_LEDSYSTEM >> 1);
}
}
// 
</syntaxhighlight>
</code>


== Hardware ==
== Hardware ==
* [[Esp32UnoBoard|Esp32UnoBoard]], allgemein jedes Esp32Board mit Serieller USB-Schnittstelle
* [[Esp32UnoBoard|Esp32UnoBoard]], allgemein jedes Esp32Board mit Serieller USB-Schnittstelle.
 
* Usb-Verbindungskabel muss korrekt PC und [[Esp32UnoBoard|Esp32UnoBoard]] verbinden.
[[File:2110122136_HardwareEsp32LanPowerSwitch.png]] (esp32unoboard)


[[file:2110141127_Esp32UnoBoard.png | 2110141127_Esp32UnoBoard | 350px]]


== Software ==  
== Software ==  
Line 50: Line 69:
oder einem aktiven Terminal eigener Wahl
oder einem aktiven Terminal eigener Wahl
* [[HTerm | HTerm]] (Terminal IDE (Homepage: [https://www.der-hammer.info/pages/terminal.html Der Hammer])).
* [[HTerm | HTerm]] (Terminal IDE (Homepage: [https://www.der-hammer.info/pages/terminal.html Der Hammer])).
!!! hier noch Bild vom Terminal im Betrieb ergänzen !!!


== Download ==
== Download ==
ArduinoIDE(C-Code):
[[file:21xxxxxxxx_Esp32ArdBlinky_01V01.zip | 21xxxxxxxx_Esp32ArdBlinky_01V01.zip]]
ArduinoIDE(Cpp-Code):
[[file:21xxxxxxxx_Esp32ArdBlinky_01V02.zip | 21xxxxxxxx_Esp32ArdBlinky_01V02.zip]]
VSCode(C-Code):
[[file:21xxxxxxxx_Esp32VscBlinky_02V01.zip | 21xxxxxxxx_Esp32VscBlinky_02V01.zip]]
VSCode(Cpp-Code):
[[file:21xxxxxxxx_Esp32VscBlinky_02V01.zip | 21xxxxxxxx_Esp32VscBlinky_02V01.zip]]


{| class="wikitable"
{| class="wikitable"
Line 74: Line 82:
|Download
|Download
|-
|-
|211012
|211014
|2115
|2115
|Esp32LanPowerSwitch
|ArduinoIDE(C-Code): Esp32ArdHelloWorld
|01V03
|01V01
|'''[[:File:2110122115_Esp32LanPowerSwitch_01V03.zip|2110122115_Esp32LanPowerSwitch_01V03.zip]]'''
|'''[[:File:2110142054_Esp32ArdHelloWorld_01V01.zip|2110142054_Esp32ArdHelloWorld_01V01.zip]]'''
|-
|21mmdd
|hhmm
|ArduinoIDE(Cpp-Code): Esp32ArdHelloWorld
|01V02
|'''[[:File:2110142054_Esp32ArdHelloWorld_01V02.zip|2110142054_Esp32ArdHelloWorld_01V02.zip]]'''
|-
|21mmdd
|hhmm
|VSCode(C-Code): Esp32VscHelloWorld
|02V01
|'''[[:File:2110142054_Esp32VscHelloWorld_02V01.zip|2110142054_Esp32VscHelloWorld_02V01.zip]]'''
|-
|21mmdd
|hhmm
|VSCode(Cpp-Code): Esp32VscHelloWorld
|02V02
|'''[[:File:2110142054_Esp32VscHelloWorld_02V02.zip|2110142054_Esp32VscHelloWorld_02V02.zip]]'''
|-
|-
|}
|}

Latest revision as of 21:17, 14 October 2021

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

Übersicht[edit]

  • 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[edit]

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

Quelltext[edit]

//-----------------------------------------
//  Application: Esp32ArdHelloWorld
//  Version....: 01V01
//  DateTime...: 2110142050
//  Author.....: OMdevelop
//-----------------------------------------
//
//-----------------------------------------
//  Definition
//-----------------------------------------
#define SerialTerminal Serial
//
const int TIMESPAN_SERIALOUT = 1000; // [ms]
//
//
//-----------------------------------------
//  Main - Setup
//-----------------------------------------
void setup() 
{ // Configuration Serial
  SerialTerminal.begin(115200);
  delay(333);
  SerialTerminal.println("");
  SerialTerminal.println("**********************");
  SerialTerminal.println("* Esp32ArdHelloWorld *");
  SerialTerminal.println("* Version: 01V01     *");
  SerialTerminal.println("* Date...: 211014    *");
  SerialTerminal.println("* Time...: 2054      *");
  SerialTerminal.println("* Author.: OMdevelop *");
  SerialTerminal.println("**********************");
}
//
//-----------------------------------------
//  Main - Loop
//-----------------------------------------
void loop() 
{ // print all seconds "Hello World!"
  delay(TIMESPAN_SERIALOUT);
  SerialTerminal.println("Hello World!");
}

Hardware[edit]

  • Esp32UnoBoard, allgemein jedes Esp32Board mit Serieller USB-Schnittstelle.
  • Usb-Verbindungskabel muss korrekt PC und Esp32UnoBoard verbinden.

2110141127_Esp32UnoBoard

Software[edit]

Wahlweise

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

oder

oder einem aktiven Terminal eigener Wahl

!!! hier noch Bild vom Terminal im Betrieb ergänzen !!!

Download[edit]

Datum Uhrzeit Projekt Version Download
211014 2115 ArduinoIDE(C-Code): Esp32ArdHelloWorld 01V01 2110142054_Esp32ArdHelloWorld_01V01.zip
21mmdd hhmm ArduinoIDE(Cpp-Code): Esp32ArdHelloWorld 01V02 2110142054_Esp32ArdHelloWorld_01V02.zip
21mmdd hhmm VSCode(C-Code): Esp32VscHelloWorld 02V01 2110142054_Esp32VscHelloWorld_02V01.zip
21mmdd hhmm VSCode(Cpp-Code): Esp32VscHelloWorld 02V02 2110142054_Esp32VscHelloWorld_02V02.zip



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