LBotics.at

Die beiden I/O Pins D2 und D3 des Arduino Boards sind in S4A als digitale Eingänge konfiguriert. Der digitale Zustand eines PINs hängt von der Spannung ab, die an einem PIN anliegt: 0V ... LOW und 5V ... HIGH.

Der Stromkreis an einem digitalen Eingang muss so aufgebaut sein, dass verschiedene Zustände (z. B. Taster ein/aus oder Schalter ein/aus) bewirken, dass an dem PIN 0V oder 5V anliegen. Dies wird meist dadurch erreicht, dass ein Widerstand zwischen den PIN und die Versorgungsspannung 5V geschaltet wird. Ein solcher Widerstand wird als Pull Up – Widerstand bezeichnet. Durch diesen liegt am PIN eine Spannung von 5V (Zustand HIGH) an.

Ein Taster wird nun mit dem PIN und der Masseleitung GROUND verbunden. Wird der Taster geschlossen, so fließt der Strom vom Pull Up – Widerstand über den GROUND ab und am PIN liegen 0V an, was dem Zustand LOW entspricht.

Dadurch gibt sich eine Umkehrung der digitalen Logik – offener Taster Zustand HIGH (1) und geschlossener Taster Zustand LOW (0) – was beim Programmieren entsprechend berücksichtigt werden muss.

Aufbau und Material
  • 1 Widerstand 10kΩ (Farbcode braun schwarz orange)
  • 1 Taster

Programmbeispiel

Im folgenden Programm wird der Zustand des PIN D3 eingelesen. Je nach Zustand des Tasters wird die Grafik des Arduino Board in der S4A Programmoberfläche angezeigt oder nicht. Ist der Taster nicht gedrückt (5V am PIN D3 - Zustand HIGH - 1) ist die Grafik ausgeblendet, wird der Taster gedrückt (0V am PIN D3 - Zustand LOW - 0) wird die Grafik angezeigt.

Erklärungen zu diesem Programmierbeispiel
Programmablauf
  1. warten bis das Programm durch anklicken der grünen Fahne gestartet wird
  2. Endlosschleife
    1. überprüfen, ob der Wert des digitalen Eingangs D3 gleich 1 (HIGH / 5V) ist
    2. wenn ja - ausblenden der Grafik des Arduino Boards
    3. wenn nein - anzeigen der Grafik des Arduino Boards
Programmblöcke

Wenn Fahne angeklickt

Dieser Block bildet den Start des Programms. Damit wird festgelegt, dass das Programm zu laufen beginnt, wenn der Benutzer auf die grüne Fahne klickt.

wiederhole fortlaufend

Mit diesem Block wird eine Endlosschleife festgelegt. Alle darin enthaltenen Programmschritte werden nacheinander abgearbeitet. Nach Erreichen des letzten Schrittes beginnt die Ausführung der Programmschritte wieder von vorne. Dies wird so lange wiederholt, bis das Programm beendet wird.

falls

Mit diesem Block wird über die weitere Ausführung des Programms entschieden. Zunächst wird eine Bedingung angegeben die überprüft wird - hier, ob der digitale Eingang D3 den Wert 1 hat. Ist die Bedingung erfüllt, werden die Programmblöcke ausgeführt, die darunter angeordnet sind.

Die Programmblöcke die ausgeführt werden sollen, wenn die Bedingung nicht erfüllt ist, werden in dem Bereich unter sonst platziert.

Bedingung

In der Gruppe Operatoren sind verschiedene Bedingungen zu finden. Diese sind grün dargestellt. Hier kommt die Bedingung zum Einsatz, die überprüft, ob zwei Werte gleich groß sind.

value of sensor

Mit diesem Block wird der Wert eines digitalen Eingangs oder eines analogen Eingangs ermittelt. Zur Auswahl stehen die digitalen Eingänge D2 und D3 und die analogen Eingänge A0, ...,. A5. Hier wird der Wert des digitalen Eingangs D3 ausgelesen.

verstecke dich

Dieser Block dient zum Ausblenden der Grafik des Arduino Boards auf der Bühne.

zeige dich

Dieser Block dient zum Einblenden der Grafik des Arduino Boards auf der Bühne.