Eingänge und Buttons

Der Baustein „IX“ ist für Eingänge vom Typ BOOL vorgesehen.
also Eingänge mit 1 Bit Datenbreite,

oder anders ausgedrückt: ein Schaltsignal das nur 2 Zustände kennt: 0 (Taster losgelassen) oder 1 (Taster gedrückt)

Eingänge:

INIT Service Initialization

  • muss beim Programmstart 1x aufgerufen werden. Wird in der Regel mit dem Ausgang „COLD“ des Bausteins „E_RESTART“ verbunden. Siehe auch: https://www.eclipse.org/4diac/en_help.php?helppage=html/4diacIDE/use4diacLocally.html und https://www.eclipse.org/4diac/en_help.php?helppage=html/parameters/parameters.html

REQ Service Request

  • wird nicht benötigt. Dieser Eingang kommt von alten Zeiten, als man die Eingänge noch pollen musste.

QI Event Input Qualifier

  • auf true setzen, damit dieser Baustein funktioniert.

PARAMS Service Parameters

  • leer lassen. (das ist mit dem FORTE-IO das wir benutzen nicht mehr verwendet)

Ausgänge:

INITO Initialization Confirm

  • wenn INIT aufgerufen wurde, und ausgeführt wurde wird das hier bekanntgegeben.

CNF Confirmation of Requested Service

  • wird nicht benötigt. Dieser Eingang kommt von alten Zeiten, als man die Eingänge noch pollen musste.

IND Indication from Resource

  • Dieser Ausgang meldet eine Änderung des Status. Bei einem einfachen Ausgang also sowohl die Änderung 0->1 wie auch 1->0

QO Event Output Qualifier

  • wird „true“ wenn QI true ist und INIT aufgerufen wurde.

STATUS Service Status

  • Hier werden Fehlermeldungen ausgegeben. Wenn kein Fehler vorliegt dann wird OK ausgegeben.

IN Input data from resource

  • Das ist der Zustand des Eingangs, also 0 oder 1

  • I1 => GPIO_NUM_26

  • I2 => GPIO_NUM_32

  • I3 => GPIO_NUM_39

damit ist folgende Applikation machbar:

ein M5 Stack Atom Lite (https://shop.m5stack.com/products/atom-lite-esp32-development-kit) plus ein Dual Button (https://shop.m5stack.com/products/mini-dual-button-unit) ergeben folgende Zuordung:

  • I1 => der Button „B“ (gelbe Drahtfarbe) roter Knopf

  • I2 => der Button „A“ (weiße Drahtfarbe) blauer Knopf

  • I3 => der Button auf dem M5 Atom Lite

AIx
……………………….

damit sind die Werte AI1, AI2, AI3, AI4, AI5, AI6 gemeint, diese bilden folgende Eingänge ab:

Nur der Kanal GPIO_NUM_32 also der weiße draht ist in der Lage Analoge Buttons zu verarbeiten.

Der Schaltplan findet sich hier: https://github.com/Meisterschulen-am-Ostbahnhof-Munchen/ISOBUS_Hardware/tree/feature/ButtonBoards/ButtonBoards/6ButtonTHT

wenn die Eingänge AIx verwendet werden darf der Eingang I2 natürlich nicht gleichzeitig verwendet werden. Die Eingänge I1 und I3 sind davon nicht betroffen.

es können also 6 Buttons mit einem Draht eingelesen werden. Drücken von 2 Tasten gleichzeitig funktionieren dann natürlich nicht.