Arduino Mega - Multi-Funktions-Shield
Wenn Sie einen Arduino Mega haben und schnell mit Displays, Tasten, LEDs, einem Summer und Sensoren experimentieren möchten, ist das Multi-Funktions-Shield die einfachste Option. Diese Schritt-für-Schritt-Anleitung deckt alles ab, was Sie brauchen:
- Das Multi-Funktions-Shield in den Arduino Mega einführen.
- Ganze Zahlen, Dezimalzahlen und Text auf der 4-stelligen 7-Segment-Anzeige anzeigen.
- Erkennen, wenn Tasten gedrückt oder losgelassen werden.
- LEDs einzeln oder als Gruppe steuern – ein, aus, umschalten, blinken.
- Mit dem Summer Pieptöne erzeugen.
- Das Potenziometer auslesen, um einen analogen Wert oder Prozentsatz zu erhalten.
- Temperatur in Celsius mit dem integrierten LM35-Sensor messen.
Da das Arduino-Mega-Header-Layout abwärtskompatibel mit dem Standard-Uno-Pinout ist, gleitet das Multi-Funktions-Shield ohne Jumper-Kabel direkt auf den Mega. Der Mega bietet Ihnen deutlich mehr E/A-Pins, mehr Speicher und zusätzliche serielle Ports – alles bei voller Kompatibilität mit diesem Shield.

Sehen Sie sich dieses Schritt-für-Schritt-Video-Tutorial an, das alle Beispiele des Multi-Funktions-Shields demonstriert. Beachten Sie, dass das Video Arduino Uno R4 zeigt, aber es funktioniert identisch für Arduino Mega:
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über das Multi-Funktions-Shield
Das Multi-Funktions-Shield bundles sechs häufig verwendete Komponenten in einem Steckmodul. Kein Löten, kein Breadboard, kein Chaos. Hier ist, was Sie bekommen:
- 4-stellige 7-Segment-Anzeige – Angetrieben von einem 74HC595-Schieberegister. Zeigt Ganzzahlen, Dezimalzahlen, Großbuchstaben und Sonderzeichen (wie °) an.
- 3 Drucktasten (S1, S2, S3) – Aktiv-NIEDRIG-Eingänge mit internen Pullups. Die Bibliothek entprellt sie automatisch.
- 4 LEDs (D1, D2, D3, D4) – Aktiv-NIEDRIG-Ausgänge. Unterstützt Ein, Aus, Umschalten und zwei Blinkmodi.
- Summer – Aktiv-NIEDRIG. Kann für eine festgelegte Dauer oder nach einer programmierbaren Verzögerung piepen.
- Potenziometer – Analogeingang an Pin A0. Gibt einen Rohwert oder einen Prozentwert zurück.
- LM35-Temperatursensor – Analogeingang an Pin A4. Gibt Celsius zurück. Entfernen Sie Jumper J1 vor der Verwendung.
Die vom Shield verwendeten Pins werden auf dem Mega identisch zugeordnet:
| Funktion | Pin | Funktion | Pin |
|---|---|---|---|
| LED D1 | 13 | Schaltfläche S1 | A1 |
| LED D2 | 12 | Schaltfläche S2 | A2 |
| LED D3 | 11 | Schaltfläche S3 | A3 |
| LED D4 | 10 | Potenziometer | A0 |
| Summer | 3 | LM35-Temperatursensor | A4 |
| Display-LATCH | 4 | ||
| Display-CLOCK | 7 | ||
| Display-DATA | 8 |

Schaltplan
Richten Sie das Shield an den Headern des Mega aus und drücken Sie es fest nach unten. Das Shield nimmt die gleichen Header-Reihen wie auf dem Uno ein, sodass die verbleibenden Mega-Pins für andere Projekte zugänglich bleiben.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Bibliothek installieren
- Verbinden Sie Ihren Arduino Mega über ein USB-Kabel mit dem Computer.
- Öffnen Sie die Arduino IDE. Wählen Sie Arduino Mega oder Mega 2560 als Platine und wählen Sie den richtigen Port.
- Gehen Sie zum Bibliotheken-Panel auf der linken Seite.
- Suchen Sie nach "DIYables_MultiFuncShield". Finden Sie den Eintrag von DIYables.
- Drücken Sie Installieren.

Die Bibliothek hat keine externen Abhängigkeiten – sie ist völlig in sich geschlossen.
Code-Skelett
Jedes Multi-Funktions-Shield-Programm folgt dem gleichen Muster mit zwei Funktionen:
MFS.begin() richtet jede Komponente ein. MFS.loop() verwaltet Display-Multiplexing, Button-Polling, Blink-Planung und Summer-Timing. Sie müssen beide aufrufen.
Code-Beispiel – 7-Segment-Anzeige
Der Sketch unten durchläuft mehrere Anzeigemodi: Ganzzahlen, Zahlen mit führenden Nullen, Dezimalzahlen, Text, Text mit Punkten, Gradsymbol und Bindestriche.
Schritte zum Hochladen
- Montieren Sie das Multi-Funktions-Shield auf dem Mega.
- Stecken Sie den Mega in Ihren Computer.
- Wählen Sie in Arduino IDE die Platine und den Port aus, dann fügen Sie den Code ein.
- Drücken Sie Hochladen.
Alle 3 Sekunden wechselt die Anzeige zum nächsten Modus, damit Sie jedes Format in Aktion sehen können.
Anzeige – Methodenreferenz
| Methode | Zweck | Beispiel | ||
|---|---|---|---|---|
| print(int) | Ganze Zahl rendern | MFS.display.print(42) | ||
| print(int, true) | Mit führenden Nullen rendern | MFS.display.print(42, true) → 0042 | ||
| print(float, dp) | Dezimalzahl rendern | MFS.display.print(3.14, 2) | ||
| print(text) | Zeichenkette rendern | MFS.display.print("HELP") | ||
| setNumber(pos, val) | Schreiben einer einzelnen Ziffer (pos 1–4) | MFS.display.setNumber(1, 5) | ||
| setChar(pos, ch) | Schreiben eines Zeichens | MFS.display.setChar(2, 'A') | ||
| setChar(pos, SegChars) | Schreiben eines Spezial symbols | MFS.display.setChar(3, SegChars | DEGREE) | |
| setDot(pos) | Aktivieren Sie das Punkte segment | MFS.display.setDot(2) | ||
| clear() | Anzeige löschen | MFS.display.clear() | ||
| show() | Ausstehende Änderungen anwenden | MFS.display.show() |
print() ruft show() für Sie auf. Für manuelle Zusammensetzung verwenden Sie clear() → setNumber()/setChar()/setDot() → show().
Spezial symbole verfügbar über SegChars: DASH, UNDERSCORE, C, E, F, DEGREE.
Code-Beispiel – Tasten
Lesen Sie Tasten ereignisse und senden Sie sie an den Serial Monitor.
Schritte zum Hochladen
- Fügen Sie den Code ein und klicken Sie auf Hochladen.
- Öffnen Sie den Serial Monitor (9600 Baud).
- Drücken und lassen Sie S1, S2, S3 los, um Ereignisse zu sehen, die protokolliert werden.
Tasten – Methodenreferenz
| Methode | Zweck |
|---|---|
| isPressed() | Wahr auf der fallenden Flanke (Taste geht nach unten) |
| isReleased() | Wahr auf der steigenden Flanke (Taste kommt zurück nach oben) |
| setDebounceTime(ms) | Ändern Sie den Entprellzeitraum (Standard 50 ms) |
Tasten werden als MFS.button1, MFS.button2, MFS.button3 oder über den Index-Helfer MFS.button(1) bis MFS.button(3) zugegriffen. Entprellen und Pullup-Konfiguration werden intern verwaltet.
Code-Beispiel – LEDs
Schalten Sie die LEDs nacheinander ein und lassen Sie dann alle vier gleichzeitig blinken.
Schritte zum Hochladen
- Fügen Sie den Code ein und klicken Sie auf Hochladen.
Sie werden sehen, dass D1 bis D4 der Reihe nach aufleuchten, gefolgt von einem synchronisierten Blinkemuster.
LEDs – Methodenreferenz
| Methode | Zweck |
|---|---|
| turnON() | LED anschalten |
| turnOFF() | LED ausschalten |
| toggle() | Aktuellen Zustand umkehren |
| blink(interval) | Symmetrisches Blinken |
| blink(onTime, offTime) | Asymmetrisches Blinken |
| isOn() | Überprüfen Sie, ob die LED derzeit leuchtet |
Gruppenkürzel auf MFS:
| Methode | Zweck |
|---|---|
| allLedsOn() | Alle vier LEDs an |
| allLedsOff() | Alle vier LEDs aus |
| allLedsBlink(interval) | Synchrones Blinken |
| allLedsBlink(onTime, offTime) | Synchrones asymmetrisches Blinken |
LEDs sind aktiv-NIEDRIG. Adressieren Sie sie als MFS.led1–MFS.led4 oder MFS.led(1)–MFS.led(4).
Code-Beispiel – Summer
Lassen Sie alle 2 Sekunden einen kurzen Piepton ertönen.
Schritte zum Hochladen
- Fügen Sie den Code ein und klicken Sie auf Hochladen.
Sie sollten alle 2 Sekunden einen kurzen Piepton hören.
Summer – Methodenreferenz
| Methode | Zweck |
|---|---|
| beep(ms) | Summer für eine bestimmte Dauer erklingen lassen |
| beep(ms, delayMs) | Erst verzögern, dann piepen |
| stop() | Summer sofort abschalten |
| isBeeping() | Wahr, während der Summer erklingt |
Code-Beispiel – Potenziometer
Lesen Sie das Potenziometer und drucken Sie den Wert und den Prozentwert auf die serielle Schnittstelle.
Schritte zum Hochladen
- Fügen Sie den Code ein und klicken Sie auf Hochladen.
- Öffnen Sie den Serial Monitor.
- Drehen Sie den Knopf und beobachten Sie die Live-Messung auf dem Monitor.
Potenziometer – Methodenreferenz
| Methode | Rückgabe | Zweck |
|---|---|---|
| readPot() | int | Rohes ADC-Zählwert (0–1023 auf Mega) |
| readPotPercent() | float | Normalisiert auf 0,0–100,0 % |
Code-Beispiel – Temperatursensor (LM35)
Lesen Sie den LM35 und zeigen Sie Grad Celsius auf der Anzeige und seriell an.
Hinweis: Sie müssen Jumper J1 entfernen, bevor Sie den Temperatursensor verwenden. Pin A4 dient auch als I2C-SDA-Leitung, und der Jumper verbindet ihn standardmäßig mit I2C.
Schritte zum Hochladen
- Entfernen Sie zuerst Jumper J1.
- Fügen Sie den Code ein, klicken Sie auf Hochladen, und öffnen Sie den Serial Monitor.
- Die Temperatur wird in Echtzeit angezeigt.
Ein 4-Sample-Gleitender Durchschnitt sorgt für stabile Messwerte. Der erste Aufruf füllt den Pufferbereich des Durchschnitts vor, sodass es keinen Kaltstartfehler gibt.
Arduino Mega Multi-Funktions-Shield - Vollständige Demo
Das Folgende ist ein Schritt-für-Schritt-Video-Tutorial, das alle Beispiele des Multi-Funktions-Shields demonstriert. Beachten Sie, dass das Video Arduino Uno R4 zeigt, aber es funktioniert identisch für Arduino Mega:
Plattformunterstützung
Die Bibliothek unterstützt alle Arduino-Plattformen (architectures=*).