Zeitgesteuerte Ausführung

In der Loop-Funktion haben wir noch Code hinzugefügt, um die Temperaturmessung alle 30 Minuten durchzuführen. Die Zeitdauer von 30 Minuten wurde in der Konstanten PERIOD festgelegt.

Stellenmarkt
  1. Expert Information Security Management (m/w / divers)
    Eurowings Aviation GmbH, Köln
  2. ERP-Anwendungsentwickler m/w/d
    RAMPF Holding GmbH & Co. KG, Grafenberg (bei Metzingen)
Detailsuche

Für die Zeitüberwachung benutzen wir die Variable sensortime:

  1. static unsigned long sensortime = 0;

Das Static-Keyword sorgt dafür, dass der Wert der Variablen auch beim Verlassen der Funktion erhalten bleibt. Ihr Wert wird bei jedem Aufruf der Loop-Funktion mit der Anzahl an Millisekunden verglichen, die seit dem Start des Arduinos vergangen sind. Beim ersten Aufruf ist diese Bedingung immer erfüllt, weshalb der erste Temperaturwert direkt nach dem Start verschickt wird. Gleichzeitig wird in Millisekunden berechnet, zu welchem Zeitpunkt der nächste Aufruf erfolgen sollte. Dieser Wert wird in sensortime gespeichert.

Golem Akademie
  1. IT-Fachseminare der Golem Akademie
    Live-Workshops zu Schlüsselqualifikationen
  2. 1:1-Videocoaching mit Golem Shifoo
    Berufliche Herausforderungen meistern
  3. Online-Sprachkurse mit Golem & Gymglish
    Kurze Lektionen, die funktionieren
Weitere IT-Trainings

  1. if(millis() > sensortime) {
  2. sensortime = millis() + PERIOD * 60l * 1000l;
  3. sensors.requestTemperatures();
  4. sendTemperature(thermometer);
  5. }

Nach der gleichen Logik arbeitet auch der Code in der loop()-Funktion, welcher dafür sorgt, dass die LED regelmäßig blinkt, wenn ein Fehler auftritt.

Jetzt zum Freizeitforscher werden

Mit dem Schaltungsaufbau und dem regelmäßigen Skriptaufruf ist alles beisammen, um an unserem großen Projekt teilzunehmen: Wie warm ist es in euren Büros?. Wir hoffen, dass möglichst viele Bastler mitmachen - jetzt vielleicht auch du?

In dieser Artikelserie sind bereits erschienen:

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Ethernet-Shield initialisieren
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5


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
20 Jahre Windows XP
Der letzte XP-Fan

Windows XP wird 20 Jahre alt - und nur wenige nutzen es noch täglich. Golem.de hat einen dieser Anwender besucht.
Ein Interview von Martin Wolf

20 Jahre Windows XP: Der letzte XP-Fan
Artikel
  1. Bemannte Raumfahrt: Gleicht die ISS einer Rumpelkammer?
    Bemannte Raumfahrt
    Gleicht die ISS einer Rumpelkammer?

    Der Platz auf der Internationalen Raumstation ISS ist knapp. Das musste bereits Alexander Gerst feststellen.

  2. Truth Social: Trumps soziales Netzwerk nicht mehr im App Store
    Truth Social
    Trumps soziales Netzwerk nicht mehr im App Store

    Die Schwierigkeiten für Trumps soziales Netzwerk halten offenbar weiter an. Eine Trump-Aktie hat aber massiv an Wert zugelegt.

  3. Age of Empires 4 im Test: Im Galopp durch die Geschichte
    Age of Empires 4 im Test
    Im Galopp durch die Geschichte

    Acht Völker aus aller Welt: Das Echtzeit-Strategiespiel Age of Empires 4 schickt uns auf Windows-PC in spannende Kämpfe in aller Welt.
    Von Peter Steinlechner

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 • Bosch Professional günstiger • Punkte sammeln bei MM für Club-Mitglieder: 1.000 Punkte geschenkt • LG OLED55B19LA 120Hz 965€ • Alternate (u. a. Apacer 1TB SATA-SSD 86,90€ & Team Group 1TB PCIe-4.0-SSD 159,90€) • Echo Show 8 (1. Gen.) 64,99€ • Smart Home von Eufy günstiger [Werbung]
    •  /