Hi NXTman,

wie meine Vorredner schon sagten, der Kode stimmt so nicht.

Hab deinen Kode überarbeitet, syntaktisch und indent, aber nicht die Funktion an sich. Habe drei Stellen auskommentiert, da das semantich/syntaktisch falsch war.
Code:
#include "asuro.h"

int main(void) {
  uint8_t tasterzustand;
  Init();
  tasterzustand = PollSwitch();
  while (1) {
    StatusLED(RED);
    sleep(255);
    BackLED(ON,ON);
    Sleep(255);
    FrontLED(ON);
    sleep(255);
   
    //return 0;            // OM> das darf hier nicht stehen!!

    if (tasterzustand > 7) { 
      // Hier macht er es nur wenn Taster K1 bis K3 gedrückt werden und 
      // zwar in beliebiger Kombination, d.h. auch alle zusammen. (Siehe 
      // Tabelle in deinem letzten Thread. einfach addieren)       
      MotorDir(RWD,BREAK);
      MotorSpeed(120,0);
    } else if (tasterzustand > 0 && tasterzustand <= 7)  {
      // analog zu oben nur hier K4 bis K6
      MotorDir(BREAK,RWD);
      MotorSpeed(0,120);
    } else { 
      // Hier ist keiner gedrückt (tasterzustand == 0)
      MotorDir(RWD,RWD);
      MotorSpeed(120,120);
      // {           // OM> das darf hier nicht stehen!
    }
  }//while(1)... // OM> das hat gefehlt
    
  return 0;
}
Gruss,

O.