Programmieren in C / C++ ESP8266-Boards und das Internet der Dinge

Slides:



Advertisements
Ähnliche Präsentationen
Entwicklung des Attiny-Boards Version 1.0 – 2.1 Prototyp.
Advertisements

DameWare NT Utilities Von Martin Melzer.
Hochschule Fulda – FB ET Sommersemester 2010
Wozu Mikrocontroller?.
Entwicklung des Attiny-Boards
Übertragungsgeschwindigkeit: Bandbreite und Durchsatz
Digital Design Schnuppervorlesung /
Zwischenpräsentation
Programmieren in C Zeichen-/Stringfunktionen Dynamischer Speicher
Programmieren in C Dynamische Listen / Bäume
Informatik II Grundlagen der Programmierung Programmieren in C printf() mit variabler Feldbreite Hochschule Fulda – FB ET Sommersemester 2014
Programmieren in C Grundlagen C 2
Programmieren in C Sortieren, Suchen
Entwicklung des Attiny-Boards
Mikrocomputertechnik Jürgen Walter
Webserver Apache & Xampp Referenten: Elena, Luziano und Sükran
Semesterarbeit SS06 LEGO Mindstorms NeXT Generation
Entfernungsmessung mit Ultraschall
Aktueller Stand der Technik. Auf dem Markt sind heute bereits 64-Bit Mikrocontroller. Die meiste Verwendung finden allerdings noch immer die 8-Bit Modelle.
Herzlich Willkommen Roland Kistler Sales Engineer
Ein kleiner Einblick für Anfänger
Drei Möglichkeiten zum Betrieb von DPV über das Internet Dr. Matthias Grabert und Walter Geiselmann Uni Ulm.
Optimierung SolarLog PV Anlagenüberwachung Ausgangslage PV Generator Danfoss TLX 15 WR SolarLog 1000 Mobilfunktpaket = externes GPRS Modem Vodafone Ultra.
Mario´s kleines Hardwarelexikon Vom Arbeitsspeicher bis zur Soundkarte.
Anleitung für das Herunterladen von Filmen (Medien-Download) Starten.
MecLab® - Festo Didactic SE
Kommunikation verbindet. Und wer verbindet die Kommunikation? COSYNUSconnect: Universeller Zugriff auf Unternehmensdatenbanken Ivan Dondras, IT-Consultant.
Ein- und Ausgabe (I/O) E. Eube, G. Heinrichs, U. Ihlefeldt (V 1.0 C 2016) 1 µC Aktoren o. Ä. LED Pieper Relais Motor … D/A-Wandler Ext. Speicher … Aus-
Markus Heller, M.A. (DL8RDS)Datum: Folie Nummer 1 File: Einsatz von Mikrocontrollern in Amateurfunkprojekten Microcontroller in Selbstbauprojekten.
Uwe Habermann VFP Advanced auch als 64 bit Version.
Calogero Fontana - Sebastian Heinisch1 PDV Vertiefung SS08 RP6 mit Kamera ● Idee ● Technische Daten ● Aufbau ● Regelung ● Demo ● Fazit ● Quellen.
Hardware.
Programmieren in C / C++ Internet der Dinge Mikrocontroller ESP8266
C / C++ für das Internet der Dinge und Hausautomatisierung Arduino Uno / Nano / … Input, Interrupts, Timer, Sleepmode Hochschule Fulda – FB AI Sommersemester.
Programmieren in C / C++ Internet der Dinge Überblick und Werkzeuge
Computerbenutzung und Dateimanagement
AGP - Bus Von Dennis Völckers
Visual FoxPro Advanced Umstellen auf 64 bit
Erste Schritte im Internet of Things
Mikrocontroller programmieren
Modulfest am International Departement in Karlsruhe
Power Point Präsentationsvorlagen
Programmieren in C Dynamische Listen / Bäume
Programmieren in C Einführung
Programmieren in C Zeichen-/Stringfunktionen Dynamischer Speicher
Projektmodul DM Wearables
Programmieren in C Grundlagen C 2
Programmieren in C / C++ Software Serial, Bluetooth
Inhaltsverzeichnis Was ist Arduino? Hardwarekomponenten
Hochschule Fulda – FB AI Sommersemester 2017
Programmieren in C Wie speichert C
Die I/O-Register des Attiny
Motherboard Marko Drinic – 1ahwit.
Schnittstellen und Datenaustausch / Inputs und Outputs
Bauprojekt Feinstaubsensor
Projektmodul DM Kurze Einführung Arduino und Arduino-Programmierung
Projektmodul DM Wearables
Android-Hacking für Dummies II
Komponenten des Computers
Programmieren in C Module und Bibliotheken
Verbindung mit einem Netzwerk
Sensoren und Aktoren.
Hardware Ordne die Begriffe den Bildern zu!
Hardware.
ABB STOTZ-KONTAKT GmbH
ESP32 Arduino Herzlich willkommen zum Edison Quickie. „ESP32-Blink“
… im Niederspannungsbereich
Sicherheitsvorschriften …
Cloudlösungen für die Landesgeschäftsstelle
EME Erde Mond Erde Michael Funke – DL4EAX.
 Präsentation transkript:

Programmieren in C / C++ ESP8266-Boards und das Internet der Dinge Hochschule Fulda – FB AI Sommersemester 2017 http://c.rz.hs-fulda.de Peter Klingebiel, HS Fulda, FB AI

Espressif ESP8266 1 auf den Mikrocontroller Espressif ESP8266 hatten wir schon einen kurzen Blick geworfen … Ultra-low-power-32-Bit Mikrocontroller Kern: Xtensa LX106 von Tensilica 80 bis 160 MHz Taktfrequenz 512 Kbyte bis mehrere Megabyte Speicher integriertes WiFi 2,4 GHz arbeitet nur mit 3.3 Volt ! direkt programmierbar (z.B. mit Arduino IDE) steuerbar mit AT-Kommandos LUA-Interpreter, Micropython-Interpreter u.v.a.m. … und uns speziell mit dem häufig eingesetzten Modul ESP-01 und den AT-Kommandos beschäftigt Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

ESP-01 1 der ESP-01 wird meist als günstiges WiFi-Modul an Arduino-Boards eingesetzt und über eine serielle Verbindung mit AT-Kommandos angesteuert Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

ESP-01 2 Erinnerung: Aufbau des ESP-01-Moduls Externe Anschlüsse Memory Externe Anschlüsse Antenne CPU Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

ESP-01 3 der ESP-01 kann mehr als nur WiFi-Sklave sein zwei (mit RX und TX vier) GPIOs sind verwendbar  ESP-01 kann auch standalone verwendet werden zur Programmierung ist ein USB-TTL-Converter (oder auch ein Arduino) erforderlich Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

ESP-01 4 Verkabelung des ESP-01: GND und VCC (Achtung: 3.3 Volt!) Stromversorgung TX und RX Kommunikation zur Programmierung CH_PD an 3.3 Volt GPIO0, GPIO2 (RX, TX) zum Anschluß externer Geräte wie Sensoren oder Aktoren (3.3 Volt-Pegel!) für Programmierung / Flashen muss GPIO0 auf LOW gezogen bzw. an GND angeschlossen werden Programmieren / Flashen mit speziellen Tools wie esp-flasher oder esplorer, dabei externe Geräte von GPIOs, speziell von GPIO0 entfernen für Betrieb Geräte dann an GPIOs anschließen Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

ESP-01 5 kurzes Resume der ESP-01 ist ein nützliches Modul, um andere Mikrocontroller mit dem WLAN und so auch mit dem Internet der Dinge zu verbinden für kleinere Aufgaben, d.h. wenn nur wenige externe Geräte (zwei, maximal vier) angeschlossen werden sollen, kann der ESP-01 auch im Standalone-Betrieb eingesetzt werden das Handling ist allerdings ein wenig mühsam der ESP8266 kann erheblich mehr leisten als mit dem ESP-01 möglich ist  bessere, leistungsfähigere ESP8266-Boards Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

ESP8266-Boards 1 sehr bekannt und beliebt: NodeMCU-Board mit USB-Anschluß, vielen GPIOs u.a.m. Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

ESP8266-Boards 2 Adafruit Huzzah ESP8266 mit USB-Anschluß, vielen GPIOs u.a.m. Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

ESP8266-Boards 3 Sparkfun ESP8266 Thing, ebenfalls mit USB, LiPo-Akku-Anschluß, vielen GPIOs u.a.m. Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

ESP8266-Boards 4 Wemos D1 mini, sehr kompakt, mit USB, 4MB Flash 12 GPIOs (11 digital incl. RX und TX, 1 analog) basiert auf dem Modul ESP8266EX Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

Wemos D1 mini 1 Pinout des Wemos D1 mini Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

Wemos D1 mini 2 Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

Wemos D1 mini 3 Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

Installation in Arduino IDE 1 ESP-Boards sind über Arduino IDE programmierbar Installation der ESP9266-Umgebung in Arduino IDE 1. Schritt: Menü Datei → Voreinstellungen Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

Installation in Arduino IDE 2 2. Schritt: dort im Textfeld zusätzliche Bordverwalter-URLs den folgenden URL eintragen: http://arduino.esp8266.com/stable/package_esp8266com_index.json Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

Installation in Arduino IDE 3 3. Schritt: Menü Werkzeuge → Boards → Boardverwalter Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

Installation in Arduino IDE 4 4. Schritt: Eintrag für ESP8266 suchen … … und installieren Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

Installation in Arduino IDE 5  ESP8266-Module sind verfügbar Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

Installation in Arduino IDE 5  viele Beispiel für ESP8266-Programmierung Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

Wemos 1 Einige Links zu Wemos und Wemos-Komponenten Homepage Wemos https://www.wemos.cc Infos zu den Wemos-Komponenten https://wiki.wemos.cc für die Wemos D1 mini und die Shields gibt es einige Beispiele unter dem Link https://github.com/wemos/D1_mini_Examples die Wemos-Infos sind leider etwas dürftig viele weitere Infos und Beispiele im Internet Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

ESP-Programmierung 1 ESP-Boards sind über Arduino IDE programmierbar Beispiel: Verbindung zum WiFi aufbauen #include <ESP8266WiFi.h> bool espConnectWiFi() { // verbindung zum WLAN WiFi.begin(myssid, mypassword); // verbindungsaufbau dauert ein wenig! for(int i = 0; i < 20; i++) { if(WiFi.status() == WL_CONNECTED) return true; delay(250) } return false; } Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

ESP-Programmierung 2 Beispiel: einfacher Webclient #include <ESP8266WiFi.h> WiFiClient client; // client objekt // zum server verbinden if(client.connect(host, port)) { // verbunden ... // request senden client.print(request); ... // antwort vom server String ans = client.readString(); // server-antwort bearbeiten ... } Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI

ESP-Programmierung 3 Beispiel: einfacher Webserver #include <ESP8266WiFi.h> WiFiServer server(port); // server objekt // server starten server.begin(); // auf client warten WiFiClient client = server.available(); if(client) { // client request lesen String req = client.readStringUntil('\r'); // request bearbeiten ... // webcontent an client senden client.print(webcontent); ... } Programmieren in C / C++ - Peter Klingebiel - HS Fulda - FB AI