Die Adapter in scratchClient können komplexe Funktionen bereitstellen. Speziell für Taster gibt es einen Adapter, der eine 'Flankenerkennung' durchführt und broadcast/events verschickt.
Dieser evantbasierte Adapter soll verwendet werden. Hierzu muß die Konfigurationsdatei in scratchClient ausgetauscht werden.
Aufgabe: Neues scratch-programm piandmore_scratchClient_button_event.sb laden, scratchClient mit neuer Konfiguration starten.
Beispielprogramm piandmore_scratchClient_button_event.sb
Falls scratchClient-Software noch läuft, dann mit ctrl-c/ strg-c beenden.
Starte scratchClient-Software in einem Terminal (und Terminal offen lassen).
cd ~/scratchClient sudo python src/scratchClient.py -c config/config_piandmore_event.xml
Scratch, 'Unterstützung für Netzwerksensoren' einschalten.
Statt den Sensorwerten [0,1] erhält scratch nun die Broadcast/ Event 'button_23_pressed', 'button_23_released'.
Die Namen der Event werden in der Konfiguration definiert.
Wenn scratch das Event einmal empfangen hat, dann steht es als Voreinstellung in den
'Broadcast-Blöcken zur Verfügung:
'wenn ich ... empfange'
Wenn man also bereits Hardware angeschlossen hat, dann kann man die Broadcasts aufzeichnen, sonst muß man diese editieren oder mit copy/paste aus der Konfiguration übernehmen.
Der wesentliche Unterschied ist nun, dass statt dem allgemeinen Eingabe-Adapter
adapter.gpio.GpioInput
der eventbasierte Adapter
adapter.gpio.GpioEventInput
verwendet wird.
Die Dokumentation zu GpioInput ist hier GpioInput
Die Dokumentation zu GpioEventInput ist hier GpioEventInput