Dispositivo Morse con el Sensor Shield

FunduinoÚltima actualización el

Taster, LED und Lautsprecher übersichtlich am Sensor-Shield

Solange du den Taster drückst, piepst der Lautsprecher und die LED leuchtet – ein einfaches Morsegerät.

Nebenbei lernst du das Sensor-Shield kennen: Es bringt für jeden Pin Signal, VCC und GND nebeneinander und spart so eine Menge Kabel auf dem Steckbrett.

Das Sensor-Shield mit markierten Pins für Signal, VCC und GND

Das Sensor-Shield

Wenn viele Sensoren am Arduino hängen, müssen für jeden eigene Leitungen für 5 V und GND aufs Steckbrett geführt werden – da geht die Übersicht schnell verloren.

Das Sensor-Shield löst das: Es wird auf den Arduino gesteckt und bietet für jeden digitalen und analogen Pin eine Dreierreihe aus Signal (S), VCC (V) und GND (G). Dazu kommen Anschlüsse für I2C und Bluetooth.

Das Sensor-Shield mit markierten Pins für Signal, VCC und GND

Der Aufbau

  • LED: gelbe Leitung an S von Pin 8, schwarze an G. Die LED braucht keinen Anschluss an V.
  • Taster: gelbe Leitung an S von Pin 9, rote an V, schwarze an G.
  • Lautsprecher: gelbe Leitung an S von Pin 10, rote an V, schwarze an G.

Der Artikel hat keine Bauteilliste und verlinkt weder das Sensor-Shield noch LED, Taster oder Lautsprecher. Ob die LED ein Modul mit eingebautem Vorwiderstand ist, geht daraus nicht hervor – eine einzelne LED braucht einen Vorwiderstand.

Aufbau des Morsegeräts mit LED, Taster und Lautsprecher am Sensor-Shield
Pinbelegung: LED an Pin 8, Taster an Pin 9, Lautsprecher an Pin 10
1 / 2

Das Programm

Der Taster arbeitet mit dem internen Pullup-Widerstand: Der Eingang liegt auf HIGH und fällt beim Drücken auf LOW. Solange du drückst, erzeugt tone() einen Ton mit 1000 Hz und die LED leuchtet. Lässt du los, schalten noTone() und digitalWrite() beides wieder ab.

So kannst du kurze und lange Signale geben – Punkte und Striche des Morsealphabets.

Morsetaste mit Ton und Licht
int LED = 8;
int TASTER = 9;
int LAUTSPRECHER = 10;
// der auszulesende Zustand des Tasters wird als Variable definiert
int TasterLesen;
void setup()
{
  pinMode(TASTER, INPUT_PULLUP);
  pinMode(LED, OUTPUT);
}
void loop()
{
  TasterLesen = digitalRead(TASTER);
  if (TasterLesen == LOW)
  {
    // Lautsprecher einschalten
    tone(LAUTSPRECHER, 1000);
    // LED einschalten
    digitalWrite(LED, HIGH);
  }
  // wenn der Taster losgelassen wurde
  else
  {
    // Lautsprecher ausschalten
    noTone(LAUTSPRECHER);
    // LED ausschalten
    digitalWrite(LED, LOW);
  }
}
Calificar la guía

Comentarios

Haz una pregunta o comparte tu experiencia

Schreib uns, wenn etwas nicht funktioniert. Nenne dabei dein Board und die Fehlermeldung.

Revisamos cada comentario antes de publicarlo. Tu dirección de correo electrónico permanece con nosotros.