Ich würde das ganze mit Interrupts lösen, also an T0 oder T1. Da kannst du dann direkt angeben, ob er bei einer steigenden oder fallenden Flanke auslöst, dass spart einiges an Prozessor-Performance. Leider bin ich in Bascom nciht mehr dinr, mal schauen, ob ich nen Beispiel finde.