Hi, papua,

ich bin ja nicht der C-Papst - kann es sein, dass Du die Ports nicht richtig initialisiert hast? Bei mir läuft das:
Code:
//Pins/Ports als Ein- (0) oder Ausgänge (1) konfigurieren, Pull Ups (1) aktivieren
// Port B und Port C für LCDisplay ändern:
                        
  DDRB  = 0b00011111;   // siehe aktuelle Anschlussbelegung oben
        //    A  => PB5=SCK kann als Tastereingang benutzt werden, PullUpB5 = high
  PORTB = 0b11100000;   //    und Port/Pull Ups (1)  aktivieren
                        
  DDRC  = 0b01111111;   // Kein PC7-Pin bei m168PU
  PORTC = 0b00000000;   //   PC0 bis PC2 für 3 LCD-Steuerbits
und dann läuft dieses hier:
Code:
    if (!( PINB & (1<<PINB5)))          // mache was, wenn Pin SCK low ist
Außerdem: gibt´s in C ein goto? Und nach den Befehlen will mein Compiler immer ein Semikolon; sonst geht nix gut. Siehe oben z.B. nach PORTC = -----; Vielleicht postest Du mal Deine Fehlermeldungen vom Compiler?