Kannst du im Binaires Zahl-system rechnen? K1 bis K6 haben allen ihres eigene Wert der ein Machte von 2 ist. K6=1 (ganz rechts von hinten gesehen: 2 zum Macht 0), K5=2 (2 zum Macht 1), K4=4 (2 zum Macht 2), usw. bis K1=32. Also jede Wert der PollSwitch zurück liefert ist einer kombination von dieser Tastern, und auch einer Summe von ein oder mehr diesen Werten. Zbs, wir bekommen den Wert 22 von PollSwitch. Das ist 2+4+16, also sind das die taster K5,K4 und K2.

Code:
2 zum macht:   7   6   5   4   3   2   1   0
             128  64  32  16   8   4   2   1
22 = (binair)  0   0   0   1   0   1   1   0
Das kann man auswerten in einem if-abfrage mit hilfe von bitweise-UND operatoren:

http://www.rn-wissen.de/index.php/C-...Bit-Operatoren

Diese operatoren vergleichen die bits in 2 werten (ein variabele und einer bestimmte wert der ein oder mehrere bits anzeigt) und setzen das antwort an hand der logische funktion (UND, ODER, exclusief-ODER).
Code:
char Taster=PollSwitch();

If (Taster & 16) { /* Taster K2 ist geprellt! */ }

If (Taster & 0b00010001) {
      /* bitweise UND mit einer Binaires zahl, 17, gemacht. */
      /*  oder Taster K2=16, oder Taster K6=1 geprellt!  */
    }
Ich hoffe du kannst hier mit weiter ausprobieren. Ich finde es schwer mich genau auszudrücken auf deutsch.