Hallo,
die Includes könnten mehr sein als notwendig sind. Das frisst aber kein Brot und in meinem Programm, wo ich das meiste rauskopiert habe, brauche ich diese. Geany sagt mir leider gar nichts. Ich kompiliere mit gcc. Der Aufruf dafür steht ja in der ersten Zeile.
Dann kommen die Variablen für die 'Sondertasten'. Wobei ich für Capslock kein Beispiel reinprogrammiert habe.
Je nach Tastencode (Scancode?) wird die dazugehörige Sub aufgerufen. Da braucht man natürlich nur die Codes der Tasten abfragen, die tatsächlich genutzt werden. Wird freie Texteingabe unterstützt, muss man das nachbauen.
Wird q gedrückt, wird zuerst der zweite Thread beendet und dann 50 Mikrosekunden später das Hauptprogramm. Schmiert das ab, dann bleibt der Thread am Leben. Ist aber nicht tragisch. GCC beendet den beim nächsten kompilieren automatisch
Die 30 Sekunden Wartezeit sollen nur demonstrieren, dass das Hauptprogramm weiterläuft, auch wenn keine Taste gedrückt wird.
Ansonsten wird hhalt bei jedem Tastendruck die zugehörige Sub aufgerufen. Das Hauptprogramm und der zweite Thread teilen sich die globalen Variablen.
Edit:
Bei mir kompiliert er fehlerfrei. Hast Du gcc? Ich starte mal den Raspi und schaue, welche Pakete so drauf sind.
Lesezeichen