Wemos D1 Mini - Funduino - Kits und Anleitungen für Arduino (2024)

Inhalt

Was kann der Wemos D1 Mini

Aktuell gibt es zwei Version des Wemos D1.Die Pinbelegung ist identisch. Der D1 Mini Typ C wird mit einen Mini-USB-Anschluss, der D1 Mini V4.0 wird mit USB-C verbunden.

  • digitale Ein- und Ausgänge
  • analoger Eingang
  • Bussysteme: I2C und SPI
  • WiFi

Pinbelegung

I2C-Pins

Der I²C-Bus (Inter Inte­gra­ted Cir­cuit) wur­de ursprüng­lich von Phil­ips ent­wi­ckelt. Ein Controller (hier der Wemos D1 Mini) sollte mit verschiedenen Peripheriegeräten kommunizieren können. Die Anschlüsse tragen die Bezeichnungen SDA und SCL.
Einige Bauteile werden mit I2C gesteuert:

SPI-Pins

Auch der SPI-Bus (Seri­al Peri­phe­ral Inter­face) dient der Kommunikation zwischen dem Controller und Peripheriegeräten. Der SPI-Bus benö­tigt zwei Daten­lei­tun­gen und zwei Steuerleitungen:

  • COPI (Controller Out Peripherie In) vom Controller ausgehende Kommunikation mit einem Peripeheriegerät
  • CIPO (Controller In Peropherie Out) vom Peripherie-Gerät aisgehende Kommunikation mit dem Controller
  • CS (Chip Select) der Controller aktiviert und startet die Kommunikation mit dem Peripheriegerät
  • SCK (Serial Clock) vom Controller erzeugte Taktfrequenz für den SPI-Bus

Anmerkung:

Es gibt mehrere Initiativen die alten, aber immer noch weit verbreiteten Bezeichnungen MOSI (Master Out Slave In -> COPI) und MISO (Master In Slave Out -> CIPO) zu ersetzen:

https://www.sparkfun.com/spi_signal_names
https://www.oshwa.org/a-resolution-to-redefine-spi-signal-names/
https://docs.arduino.cc/learn/communication/spi

SPI-Pins

D7 -> COPI/SDO
D6 -> CIPO/SDI
D5 -> CLK
D8 -> CS

Digitale Pins

Digitale Pins

D0 Zustand HIGH beim Hochladen
D5
D6
D7
D8 darf beim Hoch­la­den nicht HIGHsein
D1
D2
D3 akti­viert Firm­ware-Upload wenn der Zustand LOWist
D4 darf beim Hoch­la­den nicht LOWsein
kann nach dem Hoch­la­den als nor­ma­ler Ein­ga­be-/Aus­ga­be­pin ver­wen­det werden.
inter­neLED

Das LED-Blinkprogramm an Pin D8

int LED = D8;void setup(){ pinMode(LED, OUTPUT);}void loop(){ digitalWrite(LED, HIGH); delay(1000); digitalWrite(LED, LOW); delay(1000);}

Wird der Anschluss D4 verwendet, leuchtet gleichzeitig die interne LED.

Analoger Pin

Das Wemos D1 Mini verfügt über einen analogen Pin mit der Bezeichnung A0. Die Auflösung beträgt 10 Bit, der maximale Wert ist 1023.

Beispiel:
Potentiometer am Pin A0

// Potentiometer an Pin A0int Potentiometer = A0;// Variable für den gelesenen Wertint GelesenerWert = 0;void setup() { Serial.begin(9600); delay(1000);}void loop() { // analogen Wert lesen GelesenerWert = analogRead(Potentiometer); Serial.println(GelesenerWert); delay(500);}

Ausgabe im Seriellen Plotter bei der Drehung des Potentiometers

WiFi

Beispiel: Das Programm zeigt im Browser 6 Zufallszahlen an.
Im Seriellen Monitor wird die mit DHCP ermittelte IP des Wemos D1 Mini angezeigt.

Wemos D1 Mini - Funduino - Kits und Anleitungen für Arduino (9)

Diese Adresse musst du in einem Browser deiner Wahl eingeben.

Das dazugehörige Programm:

#include "ESP8266WiFi.h"// SSID und Passwort des Routerschar Router[] = "Router_SSID";char Passwort[] = "xxxxxxxx";WiFiServer Server(80);WiFiClient Client;// Minimum und Maximum der Zufallszahlenint Minimum = 1;int Maximum = 49;void setup(){ Serial.begin(9600); // auf serielle Verbindung warten while (!Serial); // WiFi starten WiFi.begin(Router, Passwort); // Verbindung herstellen while (WiFi.status() != WL_CONNECTED) { delay(200); Serial.print("."); } Server.begin(); // SSID des Routers anzeigen Serial.println(); Serial.print("Verbunden mit "); Serial.println(WiFi.SSID()); // IP anzeigen Serial.println(WiFi.localIP()); // Zufallsgenerator mit dem Signal an A0 starten randomSeed(analogRead(0));}void loop(){ Client = Server.available(); if (Client) { // Seite aufbauen wenn SeiteAufbauen true ist boolean SeiteAufbauen = true; // solange der Client verbunden ist ... while (Client.connected()) { if (Client.available()) { // Anforderung vom Clienten lesen ... char Zeichen = Client.read(); // return (\n) gesendet if (Zeichen == '\n') { // wenn SeiteAufbauen den Wert true hat if (SeiteAufbauen) { /* HTML-Seite aufbauen die folgenden Anweisungen müssen mit print oder println gesendet werden println "verschönert" den Quelltext (erzeugt einen Zeilenumbruch im Quelltext) */ // HTML-Seite aufbauen Client.println("HTTP/1.1 200 OK"); Client.println("Content-type:text/html"); // Leerzeile zwingend erforderlich Client.println(); Client.println(""); Client.println(""); Client.println(""); // alle 60 Sekunden aktualisieren mit meta-Tag Client.println(""); // <h2 id="toc-7"> Überschrift H2 Client.println("<h2 id="toc-8">Zufallszahlen</h2>"); // horizontale Linie Client.println(""); // Zufallszahlen anzeigen for (int i = 0; i &lt; 7; i++ ) { int Zahl = random(Minimum, Maximum); Client.println(Zahl); Client.println(" "); } Client.print(""); // IPs anzeigen Client.print("Eigene IP (Server): "); Client.print(Client.remoteIP()); // <br> break = neue Zeile Client.print("<br>IP Adresse Klient DHCP "); Client.print(WiFi.localIP()); // Seite schließen Client.println(""); Client.println(""); // HTTP-Antwort endet mit neuer Zeile Client.println(); // Seite vollständig geladen -&gt; loop verlassen break; } // wenn new line (\n) gesendet wurde -&gt; Seite aufbauen if (Zeichen == '\n') SeiteAufbauen = true; else if (Zeichen != '\r') SeiteAufbauen = false; delay(1); Client.stop(); } } } }}</h2>

Board installieren

Tra­ge unter Datei -> Ein­stel­lun­gen eine zusätz­li­che Board­ver­wal­ter-URL ein:

https://arduino.esp8266.com/stable/package_esp8266com_index.json

  • Icon für den Board­ver­wal­ter ankli­cken oder Werk­zeu­ge-> Board -> Boardverwalter
  • nach esp8266 suchen
  • Board installieren

Board auswählen

Wenn der Wemos D1 Mini nicht automatisch erkannt wurde, klicke auf „Wähle ein anderes Board und einen anderen Port“ und suche nach Wemos D1. Je nach Betriebssystem wird der USB-Port eine andere Bezeichnung haben.

Funduino - Dein Onlineshop für Mikroelektronik

  • Dauerhaft 10% Rabatt für Schüler, Studenten und Lehrkräfte

  • Mehr als 3.500 Artikel sofort verfügbar!

  • Über 8 Jahre Erfahrung mit Arduino, 3D-Druck und co.

SALE

Wemos D1 Mini - Funduino - Kits und Anleitungen für Arduino (2024)

References

Top Articles
Latest Posts
Article information

Author: Francesca Jacobs Ret

Last Updated:

Views: 6701

Rating: 4.8 / 5 (48 voted)

Reviews: 95% of readers found this page helpful

Author information

Name: Francesca Jacobs Ret

Birthday: 1996-12-09

Address: Apt. 141 1406 Mitch Summit, New Teganshire, UT 82655-0699

Phone: +2296092334654

Job: Technology Architect

Hobby: Snowboarding, Scouting, Foreign language learning, Dowsing, Baton twirling, Sculpting, Cabaret

Introduction: My name is Francesca Jacobs Ret, I am a innocent, super, beautiful, charming, lucky, gentle, clever person who loves writing and wants to share my knowledge and understanding with you.