Code:
if (PINB == (PINB & 00010000))// hier ist das problem
Zwei Dinge, über die du nachdenken solltest:

1) "00010000" ist keine binäre Konstante, sondern eine oktale.

2) Und wenn es eine binäre wäre, würde der Ausdruck prüfen, ob alle Bits Null sind, bis auf PB4, dessen Zustand wäre egal. Ich denke nicht, dass das das ist, was du willst.