Arduino Mega - Ethernet

Willkommen zu diesem umfassenden Arduino Mega Ethernet-Modul Tutorial! In dieser detaillierten Anleitung entdecken Sie, wie Sie Ihren Arduino Mega mit dem leistungsstarken W5500 Ethernet-Modul mit dem Internet und lokalen Netzwerken verbinden und Ihren Mikrocontroller in ein vollständig vernetztes Gerät verwandeln, das mit Webservern, IoT-Plattformen und anderen netzwerkverbundenen Geräten weltweit kommunizieren kann.

Das W5500 Ethernet-Modul stellt eine der zuverlässigsten und unkompliziertesten Möglichkeiten dar, kabelgebundene Netzwerkverbindungen zu Arduino-Projekten hinzuzufügen. Im Gegensatz zu WLAN-Modulen, die unter Signalinterferenzen und Verbindungsinstabilität leiden können, bietet Ethernet felsenfeste, hochgeschwindigkeits Netzwerkverbindungen mit deterministischer Leistung—perfekt für industrielle Automatisierung, Hausautomatisierungssysteme, Datenlogging-Server, Fernüberwachungsanwendungen und jedes Projekt, das zuverlässige Internetverbindungen benötigt. Der W5500-Chip übernimmt die gesamte schwere Arbeit der TCP/IP-Protokollstack-Implementierung und lässt Ihren Arduino frei, sich auf die Anwendungslogik zu konzentrieren.

Arduino Mega Ethernet

In diesem Arduino Mega W5500 Ethernet-Tutorial erkunden wir alles, was Sie benötigen, um kabelgebundene Netzwerkkonnektivität zu beherrschen:

Dieses Arduino Mega Ethernet-Projekt eröffnet unglaubliche Netzwerkmöglichkeiten! Erstellen Sie IoT-Sensornetzwerke, die Daten zu Cloud-Plattformen hochladen, bauen Sie Hausautomatisierungs-Webschnittstellen, die von jedem Browser aus zugänglich sind, entwickeln Sie Fernsteuerungssysteme für Industrieausrüstung, implementieren Sie Datenlogger, die Berichte per E-Mail senden, erstellen Sie REST-API-Clients für Drittanbieter-Services, bauen Sie vernetzte Spielsysteme, entwickeln Sie Echzeit-Monitoring-Dashboards, implementieren Sie MQTT-Clients für Smart-Home-Integration und jede Anwendung, die zuverlässige, hochgeschwindigkeits Netzwerkverbindungen benötigt.

Hardware erforderlich

1×Arduino Mega
1×USB 2.0 Kabel Typ A/B
1×W5500 Ethernet-Modul
1×Ethernet-Kabel
1×Jumper-Kabel
1×Breadboard
1×(Empfohlen) Screw Terminal Block Shield for Arduino Uno/Mega
1×(Empfohlen) Breadboard Shield for Arduino Mega
1×(Empfohlen) Enclosure for Arduino Mega

Oder Sie können die folgenden Kits kaufen:

1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Über das W5500 Ethernet-Modul

Das W5500 Ethernet-Modul ist ein kabelgebundener Netzwerk-Interface-Controller, der zuverlässige, hochgeschwindigkeits TCP/IP-Konnektivität für Mikrocontroller-Projekte bietet. Aufgebaut um den WIZnet W5500-Chip, implementiert dieses Modul einen vollständigen Hardware TCP/IP-Protokollstack, bewältigt intern die gesamte Komplexität der Netzwerkkommunikation und kommuniziert mit dem Arduino Mega durch eine einfache SPI-Verbindung (Serial Peripheral Interface).

Hauptmerkmale und Spezifikationen:

  • Hardware TCP/IP-Stack: Der W5500-Chip enthält einen vollständigen TCP/IP-Protokollstack, der in Hardware implementiert ist, wodurch die Notwendigkeit für Software-Protokollbibliotheken entfällt, die wertvollen Arduino-Speicher und Verarbeitungsleistung verbrauchen
  • Netzwerkgeschwindigkeit: Unterstützt 10/100 Mbps Ethernet (Auto-Negotiation)
  • Simultane Verbindungen: Verwaltet bis zu 8 unabhängige Socket-Verbindungen gleichzeitig
  • Interner Speicher: 32KB Pufferspeicher für Paketbearbeitung und Warteschlangen
  • Stromverbrauch: Niedriger Stromverbrauch, typisch 132mA @ 100Mbps, 78mA @ 10Mbps
  • Betriebsspannung: 3,3V Logik mit 5V toleranten Eingängen, macht es Arduino Mega kompatibel
  • SPI-Schnittstelle: Hochgeschwindigkeits-SPI-Kommunikation (bis zu 80MHz Taktfrequenz)
  • Physical Layer: Integrierte Ethernet-PHY (Physical Layer) mit RJ45-Anschluss
  • Protokollunterstützung: TCP, UDP, IPv4, ICMP, ARP, IGMP, PPPoE

Physische Schnittstellen:

Das W5500 Ethernet-Modul bietet zwei verschiedene Schnittstellentypen:

1. RJ45 Ethernet-Schnittstelle (Netzwerkverbindung):

  • Standard RJ45-Anschluss für Cat5/Cat5e/Cat6 Ethernet-Kabel
  • Verbindung zu Netzwerk-Routern, Switches oder direkt zu Computern
  • LED-Anzeigen: Link-Status (verbunden/getrennt) und Aktivität (Datenübertragung)
  • Auto-MDI/MDIX-Unterstützung: Funktioniert sowohl mit Straight-Through- als auch Crossover-Kabeln
  • Kabellänge: Bis zu 100 Meter (328 Fuß) für Standard Cat5e-Kabel

2. SPI-Schnittstelle (Arduino-Verbindung):

  • 10-Pin-Header für Verbindung zum Mikrocontroller
  • Verwendet Standard-SPI-Protokoll: MOSI, MISO, SCK, CS-Signale
  • Pin-kompatibel mit den meisten Arduino SPI-basierten Shields

Detaillierte Pin-Beschreibung:

Das Verständnis der Funktion jedes Pins ist essentiell für ordnungsgemäße Verkabelung und Betrieb:

  • NC-Pin: No Connection (Keine Verbindung). Dieser Pin ist intern nicht verbunden und sollte in Ihrer Verkabelung unverbunden bleiben. Er dient als mechanischer Platzhalter im Pin-Header.
  • INT-Pin: Interrupt-Ausgangspin. Dieses aktiv-low Interrupt-Signal kann den Arduino benachrichtigen, wenn Netzwerkereignisse auftreten (Paket empfangen, Verbindung etabliert, etc.). Für grundlegende Anwendungen kann dieser Pin unverbunden bleiben. Fortgeschrittene Anwendungen können ihn mit einem Arduino Interrupt-Pin verbinden für ereignisgesteuerte Netzwerkbehandlung.
  • RST-Pin: Hardware-Reset-Eingang (aktiv low). Dieser Pin setzt den W5500-Chip zurück, wenn er auf LOW gezogen wird. Verbinden Sie diesen mit einem Digital-Pin des Arduino Mega für software-kontrollierte Resets oder verbinden Sie ihn mit dem RESET-Pin des Arduino, um das Ethernet-Modul zurückzusetzen, wann immer der Arduino zurückgesetzt wird. Kann auch für einfache Anwendungen unverbunden bleiben, da das Modul internen Power-On-Reset hat.
  • GND-Pin: Masse-Referenz. Verbinden Sie diesen mit dem GND-Pin des Arduino Mega, um eine gemeinsame Masse zwischen den beiden Geräten zu etablieren. Dies ist essentiell für ordnungsgemäße SPI-Kommunikation.
  • 5V-Pin: Stromversorgungseingang. Verbinden Sie diesen mit dem 5V-Ausgangspin des Arduino Mega, um Betriebsstrom für das Modul zu liefern. Der onboard Spannungsregler wandelt 5V in die für den W5500-Chip benötigten 3,3V um. Stromaufnahme beträgt etwa 140-200mA während aktiver Nutzung.
  • 3.3V-Pin: 3,3V Stromausgang. Dieser Pin liefert regulierte 3,3V-Ausgabe vom onboard Regler des Moduls. Kann verwendet werden, um andere 3,3V-Geräte zu versorgen, aber prüfen Sie die Stromkapazität des Reglers (typisch 150-300mA). Für Arduino Mega-Verbindung lassen Sie diesen Pin unverbunden.
  • MISO-Pin: Master In, Slave Out (SPI-Datenleitung). Dieser Pin überträgt Daten vom W5500-Modul (Slave) zum Arduino Mega (Master). Verbinden Sie mit dem SPI MISO-Pin des Arduino Mega (Digital-Pin 50).
  • MOSI-Pin: Master Out, Slave In (SPI-Datenleitung). Dieser Pin überträgt Daten vom Arduino Mega (Master) zum W5500-Modul (Slave). Verbinden Sie mit dem SPI MOSI-Pin des Arduino Mega (Digital-Pin 51).
  • SCS-Pin: Slave Chip Select (SPI-Select-Leitung). Dieses aktiv-low Signal aktiviert den W5500-Chip für SPI-Kommunikation. Verbinden Sie mit dem SPI SS/CS-Pin des Arduino Mega (Digital-Pin 53) oder jedem anderen verfügbaren Digital-Pin (muss im Code definiert werden).
  • SCLK-Pin: Serial Clock (SPI-Taktleitung). Dieser Pin überträgt das Taktsignal, das die SPI-Datenübertragung synchronisiert. Verbinden Sie mit dem SPI SCK-Pin des Arduino Mega (Digital-Pin 52).
Ethernet module pinout
image source: diyables.io

Vorteile des W5500 gegenüber anderen Netzwerklösungen:

  • Hardware TCP/IP-Stack: Im Gegensatz zu software-basierten Lösungen verbraucht der Hardware-Stack des W5500 keinen Arduino-RAM oder Verarbeitungszyklen
  • Zuverlässige Verbindung: Kabelgebundenes Ethernet ist immun gegen WLAN-Interferenzen, Signalstärke-Probleme und drahtlose Sicherheitsbedenken
  • Niedrigere Latenz: Kabelgebundene Verbindungen haben typisch 1-5ms Latenz vs. 50-100ms für WLAN
  • Besser für Industrie: Ethernet ist Standard in industriellen Umgebungen, wo Zuverlässigkeit kritisch ist
  • Kein Passwort-Management: Im Gegensatz zu WLAN benötigt Ethernet keine SSID- und Passwort-Konfiguration
  • Energieeffizient: Nach der Konfiguration verbrauchen Ethernet-Module weniger Strom als ständig sendende WLAN-Module
  • Mehrere Protokolle: Unterstützt TCP, UDP und andere Protokolle gleichzeitig

Wann Ethernet vs. WLAN verwenden:

Wählen Sie Ethernet (W5500) wenn:

  • Projekt ist stationär mit Zugang zu kabelgebundener Netzwerkinfrastruktur
  • Zuverlässigkeit und deterministische Leistung sind kritisch
  • Industrielle oder kommerzielle Umgebung
  • Hoher Datendurchsatz ist erforderlich
  • Sicherheit durch physische Zugriffskontrolle ist gewünscht
  • Energiebudget ist begrenzt (nach anfänglicher Einrichtung)

Wählen Sie WLAN wenn:

  • Projekt ist mobil oder wird häufig bewegt
  • Keine Ethernet-Infrastruktur verfügbar
  • Drahtlose Bequemlichkeit überwiegt Zuverlässigkeitsanforderungen
  • Projekt ist verbraucherorientiert, wo WLAN erwartet wird

Schaltplan zwischen Arduino Mega und W5500 Ethernet-Modul

Die Verbindung des W5500 Ethernet-Moduls mit Ihrem Arduino Mega erfordert sorgfältige Aufmerksamkeit für die SPI-Schnittstellen-Pins. Der Arduino Mega hat dedizierte Hardware-SPI-Pins, die optimierte, hochgeschwindigkeits Kommunikation mit SPI-Geräten wie dem W5500 bieten.

Arduino Mega Ethernet module Wiring Diagram

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Detaillierte Verbindungstabelle:

Die Tabelle unten zeigt die vollständige Verkabelung zwischen dem W5500 Ethernet-Modul und Arduino Mega:

W5500 Pin Funktion Arduino Mega Pin Pin Name/Nummer
GND Masse GND Masse
5V Stromversorgung 5V 5V Strom
MISO SPI Daten Ausgang MISO Digital-Pin 50
MOSI SPI Daten Eingang MOSI Digital-Pin 51
SCLK SPI Takt SCK Digital-Pin 52
SCS Chip Select SS Digital-Pin 53
NC Keine Verbindung - (Unverbunden lassen)
INT Interrupt - (Optional, für grundlegende Nutzung unverbunden lassen)
RST Reset - (Optional, kann mit jedem Digital-Pin verbunden werden)
3.3V 3.3V Ausgang - (Unverbunden lassen)

Kritische Verkabelungshinweise:

1. SPI-Pin-Positionen am Arduino Mega:

Die Hardware-SPI-Pins des Arduino Mega sind anders als bei kleineren Arduino-Boards:

  • MOSI: Pin 51 (NICHT Pin 11 wie beim Uno)
  • MISO: Pin 50 (NICHT Pin 12 wie beim Uno)
  • SCK: Pin 52 (NICHT Pin 13 wie beim Uno)
  • SS/CS: Pin 53 (NICHT Pin 10 wie beim Uno)

Die Verwendung falscher Pins ist der häufigste Verkabelungsfehler. Überprüfen Sie immer, dass Sie die dedizierten SPI-Pins des Mega verwenden!

2. Chip Select (SCS/SS) Pin:

Während der Standard-Chip-Select Pin 53 ist, können Sie JEDEN Digital-Pin für CS verwenden, wenn Sie ihn korrekt in Ihrem Code konfigurieren. Jedoch muss, auch wenn Sie einen alternativen CS-Pin verwenden, Pin 53 als OUTPUT konfiguriert werden in Ihrer setup()-Funktion, sonst funktioniert der SPI-Master-Modus nicht ordnungsgemäß:

pinMode(53, OUTPUT); // Erforderlich auch wenn Pin 53 nicht als CS verwendet wird

3. Strom-Überlegungen:

Das W5500-Modul zieht 140-200mA während des Betriebs. Bei USB-Versorgung kann der Arduino Mega bis zu 500mA insgesamt liefern. Wenn Ihr Projekt stromhungrige Komponenten (Motoren, viele LEDs, etc.) enthält, erwägen Sie:

  • Verwendung einer externen 5V-Stromversorgung für den Arduino
  • Verbindung des 5V-Pins des Moduls mit einer externen regulierten 5V-Quelle (gemeinsame Masse sicherstellen)

4. Ethernet-Kabel-Verbindung:

Nach der Verkabelung der SPI-Schnittstelle:

  1. Verbinden Sie ein Ethernet-Kabel (Cat5/Cat5e/Cat6) mit dem RJ45-Anschluss des W5500
  2. Verbinden Sie das andere Ende mit Ihrem Netzwerk-Router, Switch oder direkt mit einem Computer
  3. Die Link-LED sollte leuchten, wenn ordnungsgemäß mit einem aktiven Netzwerk-Port verbunden
  4. Die Aktivitäts-LED sollte während der Datenübertragung blinken

5. Netzwerkinfrastruktur-Anforderungen:

  • Router/Switch: Die meisten Heim- und Büronetzwerke haben einen Router oder Switch mit freien Ethernet-Ports
  • DHCP-Server: Für automatische IP-Zuweisung muss Ihr Router DHCP aktiviert haben (typische Standardeinstellung)
  • Statische IP: Alternativ konfigurieren Sie eine statische IP im Arduino-Code (muss innerhalb des Netzwerk-Subnets sein)
  • Internetzugang: Für Web-Client-Anwendungen benötigt Ihr Netzwerk Internetverbindung

Verbindungsverifikation:

Nach der Verkabelung überprüfen Sie Ihr Setup:

  1. Strom-LED: W5500-Modul sollte eine leuchtende Strom-Anzeige-LED haben
  2. Link-LED: Sollte leuchten, wenn Ethernet-Kabel mit aktivem Netzwerk verbunden ist
  3. Arduino-Strom: Arduino Mega Strom-LED sollte leuchten
  4. Keine Kurzschlüsse: Überprüfen Sie, dass keine SPI-Kabel gekreuzt oder kurzgeschlossen sind
  5. Sichere Verbindungen: Alle Jumper-Kabel sollten fest sitzen

Häufige Verkabelungsfehler:

  • Verwendung von Uno SPI-Pins (11, 12, 13) anstatt Mega-Pins (50, 51, 52)
  • Vergessen, Pin 53 als OUTPUT zu setzen, auch wenn alternativer CS-Pin verwendet wird
  • Vertauschen von MOSI- und MISO-Verbindungen
  • Schlechte Qualität der Jumper-Kabel verursacht intermittierende Verbindungen
  • Unzureichende Stromversorgung für sowohl Arduino als auch Ethernet-Modul
  • Nicht verbundene Masse zwischen Arduino und Ethernet-Modul

Arduino Mega Code für Ethernet-Modul - HTTP-Anfrage über Ethernet senden

Dieses Beispielprogramm demonstriert, wie Sie Ihren Arduino Mega als HTTP-Client verwenden—ein Gerät, das Daten von Webservern über das Internet anfordert und empfängt. Der Code etabliert eine TCP-Verbindung zu example.com (einem Demonstrations-Webserver), sendet eine HTTP GET-Anfrage, empfängt die HTML-Antwort und zeigt sie im Serial Monitor an.

Was dieser Code macht:

  • Netzwerkkonfiguration: Richtet Ethernet mit MAC-Adresse und automatischer DHCP-IP-Zuweisung ein
  • DNS-Auflösung: Wandelt den Domain-Namen "example.com" in seine IP-Adresse um
  • TCP-Verbindung: Etabliert eine Socket-Verbindung zum Webserver auf Port 80 (HTTP)
  • HTTP-Anfrage: Sendet eine ordnungsgemäß formatierte HTTP GET-Anfrage mit erforderlichen Headern
  • Antwortbehandlung: Empfängt und zeigt die vollständige HTTP-Antwort einschließlich Header und HTML-Inhalt an
  • Verbindungsmanagement: Schließt die Verbindung ordnungsgemäß nach Empfang aller Daten

HTTP-Client-Operation verstehen:

Wenn Sie im Web browsen, agiert Ihr Computer als HTTP-Client. Dieser Arduino-Code führt dieselbe Funktion aus:

  1. Verbindung zu Webserver über TCP-Socket
  2. HTTP-Anfrage senden, die spezifiziert, was Sie wollen (GET /path)
  3. HTTP-Antwort empfangen, die die angeforderten Daten enthält
  4. Verbindung schließen

Dieses Muster ermöglicht Arduino, mit Web-APIs zu interagieren, Daten herunterzuladen, Sensordaten zu Cloud-Plattformen zu übermitteln, nach Firmware-Updates zu suchen und mit jedem HTTP-basierten Service zu kommunizieren.

Dieses Programm funktioniert als Web-Client. Es sendet HTTP-Anfragen an den Webserver unter http://example.com/.

/* * Dieser Arduino Mega Code wurde von newbiely.de entwickelt * Dieser Arduino Mega Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino-mega/arduino-mega-ethernet-module */ #include <SPI.h> #include <Ethernet.h> // replace the MAC address below by the MAC address printed on a sticker on the Arduino Shield 2 byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; EthernetClient client; int HTTP_PORT = 80; String HTTP_METHOD = "GET"; // or POST char HOST_NAME[] = "example.com"; String PATH_NAME = "/"; void setup() { Serial.begin(9600); delay(1000); Serial.println("Arduino Mega - Ethernet Tutorial"); // initialize the Ethernet shield using DHCP: if (Ethernet.begin(mac) == 0) { Serial.println("Failed to obtaining an IP address"); // check for Ethernet hardware present if (Ethernet.hardwareStatus() == EthernetNoHardware) Serial.println("Ethernet shield was not found"); // check for Ethernet cable if (Ethernet.linkStatus() == LinkOFF) Serial.println("Ethernet cable is not connected."); while (true) ; } // connect to web server on port 80: if (client.connect(HOST_NAME, HTTP_PORT)) { // if connected: Serial.println("Connected to server"); // make a HTTP request: // send HTTP header client.println(HTTP_METHOD + " " + PATH_NAME + " HTTP/1.1"); client.println("Host: " + String(HOST_NAME)); client.println("Connection: close"); client.println(); // end HTTP header while (client.connected()) { if (client.available()) { // read an incoming byte from the server and print it to serial monitor: char c = client.read(); Serial.print(c); } } // the server's disconnected, stop the client: client.stop(); Serial.println(); Serial.println("disconnected"); } else { // if not connected: Serial.println("connection failed"); } } void loop() { }

Schnelle Schritte

Folgen Sie diesen umfassenden Schritt-für-Schritt-Anweisungen, um Ihren Arduino Mega HTTP-Anfragen über Ethernet senden zu lassen:

1. Physische Verkabelung: Verbinden Sie das W5500 Ethernet-Modul mit Ihrem Arduino Mega gemäß dem oben bereitgestellten Schaltplan. Überprüfen Sie alle SPI-Verbindungen doppelt: MISO zu Pin 50, MOSI zu Pin 51, SCK zu Pin 52, SCS zu Pin 53, plus 5V- und GND-Verbindungen.

2. Netzwerkverbindung: Verwenden Sie ein Standard-Ethernet-Kabel (Cat5/Cat5e/Cat6), um den RJ45-Anschluss des W5500-Moduls mit einem verfügbaren Port Ihres Netzwerk-Routers oder Switches zu verbinden. Überprüfen Sie, dass die Link-LED am Modul leuchtet, was eine erfolgreiche physische Verbindung anzeigt.

3. USB-Verbindung: Verbinden Sie Ihr Arduino Mega Board mit Ihrem Computer über ein USB-Kabel. Warten Sie, bis das Betriebssystem das Gerät erkennt und alle notwendigen Treiber installiert.

4. Arduino IDE öffnen: Starten Sie die Arduino IDE Software auf Ihrem Computer.

5. Board-Auswahl: Navigieren Sie zu Tools → Board und wählen Sie "Arduino Mega or Mega 2560" aus der verfügbaren Board-Liste.

6. Port-Auswahl: Gehen Sie zu Tools → Port und wählen Sie den COM-Port (Windows) oder /dev/ttyUSB oder /dev/ttyACM Port (Mac/Linux), der Ihrem Arduino Mega entspricht.

7. Bibliothek-Installation: Die Ethernet-Bibliothek ist für W5500-Kommunikation erforderlich:

  • Klicken Sie auf das Libraries-Symbol (Buch-Symbol) in der linken Seitenleiste der Arduino IDE
  • Geben Sie "Ethernet" in das Suchfeld ein
  • Finden Sie die Ethernet-Bibliothek von Various (offizielle Arduino-Bibliothek)
  • Klicken Sie den Install-Button, um die Bibliothek zu Ihrer IDE hinzuzufügen
  • Warten Sie, bis die Installation abgeschlossen ist
Arduino Mega Ethernet library

8. Serial Monitor öffnen: Bevor Sie Code hochladen, öffnen Sie den Serial Monitor (Tools → Serial Monitor oder Ctrl+Shift+M) und stellen Sie die Baud-Rate auf 9600 ein. Dies ermöglicht es Ihnen, die Programmausgabe sofort nach dem Upload zu sehen.

9. Code kopieren und hochladen: Kopieren Sie den oben bereitgestellten HTTP-Client-Code und fügen Sie ihn in einen neuen Arduino IDE Sketch ein. Klicken Sie den Upload-Button (Rechts-Pfeil-Symbol), um zu kompilieren und auf Ihren Arduino Mega hochzuladen.

10. Netzwerkverbindung überprüfen: Nach Abschluss des Uploads wird der Arduino automatisch neu starten und mit der Ausführung beginnen. Beobachten Sie den Serial Monitor für Ausgabe:

  • "Arduino Mega - Ethernet Tutorial" sollte zuerst erscheinen
  • Wenn DHCP erfolgreich ist, sehen Sie "Connected to server"
  • Die vollständige HTTP-Antwort von example.com wird folgen

11. Ergebnisse interpretieren: Im Serial Monitor sollten Sie Ausgabe ähnlich dieser sehen:

COM6
Send
Arduino UNO R4 - Ethernet Tutorial Connected to server HTTP/1.1 200 OK Accept-Ranges: bytes Age: 208425 Cache-Control: max-age=604800 Content-Type: text/html; charset=UTF-8 Date: Fri, 12 Jul 2024 07:08:42 GMT Etag: "3147526947" Expires: Fri, 19 Jul 2024 07:08:42 GMT Last-Modified: Thu, 17 Oct 2019 07:18:26 GMT Server: ECAcc (lac/55B8) Vary: Accept-Encoding X-Cache: HIT Content-Length: 1256 Connection: close <!doctype html> <html> <head> <title>Example Domain</title> <meta charset="utf-8" /> <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> </head> <body> <div> <h1>Example Domain</h1> <p>This domain is for use in illustrative examples in documents. You may use this domain in literature without prior coordination or asking for permission.</p> <p><a href="https://www.iana.org/domains/example">More information...</a></p> </div> </body> </html> disconnected
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Die Ausgabe verstehen:

  • HTTP-Status: "HTTP/1.1 200 OK" zeigt erfolgreiche Anfrage an (200 = Erfolgscode)
  • Response-Header: Zeilen vor der leeren Zeile enthalten Metadaten über die Antwort
  • HTML-Inhalt: Alles nach der leeren Zeile ist der tatsächliche Webseiten-HTML-Code
  • "disconnected": Zeigt an, dass die Verbindung ordnungsgemäß geschlossen wurde

Fehlerbehebungstipps:

  • "Failed to configure Ethernet using DHCP": Überprüfen Sie physische Netzwerkverbindung, stellen Sie sicher, dass Router-DHCP aktiviert ist
  • Nichts wird ausgegeben: Überprüfen Sie, dass Serial Monitor Baud-Rate auf 9600 eingestellt ist
  • "Connection failed": Überprüfen Sie Internetverbindung, stellen Sie sicher, dass DNS funktioniert
  • Timeout-Fehler: Firewall blockiert möglicherweise ausgehende Verbindungen auf Port 80
  • Zufällige Zeichen: Falsche Baud-Rate im Serial Monitor

※ Notiz:

MAC-Adressen-Konflikt-Warnung: Jedes Netzwerkgerät muss eine eindeutige MAC-Adresse haben. Wenn ein anderes Gerät in Ihrem Netzwerk dieselbe MAC-Adresse verwendet wie in Ihrem Arduino-Code konfiguriert, werden beide Geräte intermittierende Verbindungsprobleme, Paketverluste oder kompletten Netzwerkausfall erfahren.

Die MAC-Adresse im Beispielcode (DE:AD:BE:EF:FE:ED) ist nur für Demonstrationszwecke. Für Produktionsbereitstellungen verwenden Sie eine ordnungsgemäß zugewiesene MAC-Adresse aus dem zugewiesenen Bereich Ihrer Organisation oder generieren Sie eine zufällige lokale MAC-Adresse (zweite Hex-Ziffer sollte 2, 6, A oder E sein).

Arduino Mega Code für Ethernet-Modul - Webserver

Dieses Beispiel demonstriert, wie Sie Ihren Arduino Mega in einen voll funktionsfähigen Webserver verwandeln, der auf HTTP-Anfragen von Browsern und anderen HTTP-Clients antwortet. Wenn ein Browser sich mit der IP-Adresse des Arduino verbindet, sendet der Server eine einfache

Verwandte Tutorials

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!