Benutzer-Werkzeuge

Webseiten-Werkzeuge


softwarebausteine:event-system

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
softwarebausteine:event-system [2014/03/09 09:55] Michaelsoftwarebausteine:event-system [2014/09/01 12:34] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 1: Zeile 1:
 +==== Event-System ====
  
 +Die Basis-Firmware enthält ein kleines Event-System, mit der eine lose Kopplung zwischen AddOn und dem BiDiB-Bus zur Versendung von Nachrichten und das Starten bestimmter Makros realisiert werden kann.
 +
 +=== Ereignisverwalter ===
 +
 +Zentraler Teil ist der Ereignisverwalter mit dem Modul ''event_handler'' in der Basis-Firmware. Das Modul wertet das für Events zuständige ''Fifo'': ''event_fifo'' aus und agiert entsprechend.
 +
 +Zum Auslösen eines Ereignisses wird das Fifo: ''event_fifo'' lediglich mit dem gewünschten Ereigniscode gefüllt. Per Taskverwaltung wird dann der "Event Handler" informiert.
 +
 +Ereignisse können die Werte 0x00 bis 0xFF annehmen.
 +
 +=== Makro-Ereignisse ===
 +
 +Der Bereich von 0x00 bis 0x7F ist für die interne Makroverwaltung reserviert.
 +
 +=== Taster Ereignisse ===
 +
 +Der Bereich von 0xF0 bis 0xFF ist für die Taster auf der Basis-Platine reserviert.
 +
 +=== Keyboard-Ereignisse ===
 +
 +Unter Keyboard-Ereignissen wird das Verstellen von **externen** Tastern oder anderen Schaltelementen verstanden.
 +
 +Keyboard-Ereignisse liegen zwischen ''IN_DOWN0'' (ab 0x80) und ''IN_DOWN15'' sowie ''IN_UP0'' und ''IN_UP15''. Die Definition ist in der Definitionsdatei ''keyboard.h'' enthalten.
 +
 +Diese Ereignisse können frei verwendet werden und lösen eine MSG_LC_KEY-Nachricht bei eingeschaltetem "Feature" ''FEATURE_CTRL_INPUT_NOTIFY'' aus.
 +
 +Zusätzlich wird für die Ereignisse IN_DOWN0 bis IN_DOWN15 das korrespondierende Makro gestartet, wenn das "Feature" ''FEATURE_CTRL_MAC_START_MAN'' aktiviert ist.
 +
 +== Ereignis auslösen ==
 +Allein durch das Füllen des FiFos wird das entsprechende Ereignis ausgelöst:
 +{{:softwarebausteine:oc_event.jpg|}}
 +Im Beispiel nimmt den größten Teil die Umsetzungstabelle des Port-Bits in den Ereigniscode in Anspruch.
softwarebausteine/event-system.txt · Zuletzt geändert: 2014/09/01 12:34 von 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki