Taster werden meistens mit pullup an + angeschlossen und bei betätigung mit GND verbunden.
Ist das bei dir so ?
Dann solltest du mittels
PORTB = &HFF
ev. die internen Pullups aufdrehen.
Und in diesem Fall musst du auf "0" abfragen
Code:If Taster2 = 0 Then Compare1a = 100 Else Waitms 50
etc.
Weiters: du setzt bei jedem Durchlauf den Wert auf 50
d.h. wenn du bei einem Taster auf 100 setzt, gilt dieser Wert gerade ein paar µS
Lesezeichen