Die Beschreibung, dass der Quelltext stehen/stecken bleibt finde ich
ebenfalls etwas sehr seltsam... wie soll denn das genau gehen? Ich glaub
mal, dass du einfach deinen Fehler nicht ordentlich beschreiben kannst.
Anhand deiner Beschreibung würde ich eher davon ausgehen, dass er
einfach nicht in die IF-Anweisung springt. Und das liegt dann wohl
offenbar daran, dass die Bedingung nicht erfüllt ist. Das würde auch
erklären, warum es mit != "geht" und mit == nicht. Du solltest also
tatsächlich mal überprüfen woran es liegt, dass die Bedingung nicht
wahr wird.
Also erstmal checken welchen Wert PINB tatsächlich hat. Kann der
überhaupt den abgefragten Wert annehmen? Ansonsten mal überprüfen ob das
in den Datentyp pb2 überhaupt sinnvoll reinpaßt. Vielleicht hilft ja
auch schon ein typecast.