Ethernet-Shield initialisieren

Bevor wir Daten über das Ethernet-Shield verschicken können, müssen wir es initialisieren. Dazu benötigen wir zwei Bibliotheken, die bereits mit der Arduino-IDE mitgeliefert werden. Außerdem müssen wir für das Ethernet-Shield von Hand eine MAC festlegen und ein Objekt definieren, über das unsere Kommunikation mit dem Shield abgewickelt wird:

Stellenmarkt
  1. Sachbearbeiter (w/m/d) für den IT-Support im Vor-Ort-Service
    KommunalBIT AöR, Fürth
  2. Testmanager & Data Quality Specialist (m/w/d) im Data Management
    Schaeffler Automotive Aftermarket GmbH & Co. KG, Langen
Detailsuche

  1. EthernetClient client;
  2. byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
So vorbereitet beschränkt sich der Start des Ethernet-Shields auf einen Funktionsaufruf, den wir in die setup()-Funktion des Sketch packen:

  1. Ethernet.begin(mac)

In unserem Skript auf Github haben wir diesen Aufruf in der Funktion initEthernet() gekapselt, die auch die Fehler bei der Initialisierung behandelt.

Temperatur senden

Golem Akademie
  1. C++ Programmierung Basics: virtueller Fünf-Tage-Workshop
    30.05.-03.06.2022, virtuell
  2. Cloud Competence Center: Strategien, Roadmap, Governance: virtueller Ein-Tages-Workshop
    26.07.2022, Virtuell
Weitere IT-Trainings

Die Daten werden schließlich in der Funktion sendTemperature() versendet. Die Funktion erwartet als Parameter die ID des Sensors, die wir in der Variable thermometer gespeichert haben.

Damit lesen wir den gespeicherten Temperaturwert des Sensors in Grad Celsius aus:

  1. float tempC = sensors.getTempC(deviceAddress);

Als Nächstes weisen wir das Ethernet-Shield an, eine TCP-Verbindung zum Golem.de-Server an Port 80 aufzubauen, die Konstante SERVER enthält den Servernamen "www.golem.de":

  1. client.connect(SERVER, 80)

War das erfolgreich, wickeln wir eine HTTP-GET-Anfrage von Hand ab. Diese bauen wir mit Hilfe eines String-Objekts zusammen. Wichtigster Bestandteil ist die URL, sie besteht aus der Konstante namens URL, daran wird die Temperatur als Parameter angehängt.

Wie die URL-Konstante aufgebaut werden muss, kann der technischen Dokumentation unseres Messprojekts entnommen werden. Teil der Dokumentation ist auch ein Formular, um sich die URL einfach zusammenzuklicken. Für die URL ist es wichtig, dass "Temperatur anhängen" ausgewählt wurde.

  1. String cmd = "GET ";
  2. cmd += URL;
  3. cmd += tempC;
  4. cmd += " HTTP/1.0";
  5.  
  6. client.println(cmd);
  7. client.print("Host: ");
  8. client.println(SERVER);
  9. client.println("Connection: close");
  10. client.println();

Die Zeichenketten in den Aufrufen von client.print() und client.println() werden direkt an den Golem.de-Server geschickt.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 LED ansprechenZeitgesteuerte Ausführung 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7.  


MikePenison 22. Apr 2016

Hallo, ich habe Interesse an so einem Temperatur Projekt auf Bluetooth Basis (Arduino...

NoLabel 22. Apr 2016

Breadboard ist ja auch nur zum testen einer Schaltung da und nicht für Dauerbetrieb...

TuX12 22. Apr 2016

Damit geht's auch und kost' fast nix ;)



Aktuell auf der Startseite von Golem.de
Kitty Lixo
Nach Sex mit Mitarbeitern Instagram-Account zurückerhalten

Laut einer Sexdarstellerin muss man nur die richtigen Leute bei Facebook sehr intim kennen, um seinen Instagram-Account immer wieder zurückzubekommen.

Kitty Lixo: Nach Sex mit Mitarbeitern Instagram-Account zurückerhalten
Artikel
  1. Ebay-Kleinanzeigen: Im Chat mit den Phishing-Betrügern
    Ebay-Kleinanzeigen
    Im Chat mit den Phishing-Betrügern

    Wenn man bestimmte Anzeigen in Kleinanzeigenportalen aufgibt, hat man sofort einen Betrüger an der Backe. Die Polizei kann kaum etwas dagegen tun.
    Ein Bericht von Friedhelm Greis

  2. Autos: Mercedes' Luxuskurs könnte das Aus für A- und B-Klasse sein
    Autos
    Mercedes' Luxuskurs könnte das Aus für A- und B-Klasse sein

    Mercedes definiert sich neu als Luxuskonzern. Das könnte auch das Ende für die Einsteiger-Modelle bedeuten, weil mit diesen kaum Geld zu verdienen ist.

  3. Ericsson und Telia Norway: Fast 4 GBit/s in 26-GHz-Netz erreicht
    Ericsson und Telia Norway
    Fast 4 GBit/s in 26-GHz-Netz erreicht

    26-GHz-Netz-Antennen erreichen in Norwegen Höchstwerte bei der Datenübertragung. Die 5G-Ausrüstung kommt von Ericsson.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Cyber Week: Bis zu 87€ Rabatt auf SSDs • PNY RTX 3080 12GB günstig wie nie: 974€ • Razer Basilisk V3 Gaming-Maus 44,99€ • PS5-Controller + Samsung SSD 1TB 176,58€ • MindStar (u. a. MSI RTX 3090 24GB Suprim X 1.790€) • Gigabyte Waterforce Mainboard günstig wie nie: 464,29€ [Werbung]
    •  /