Also, wenn ich es richtig verstanden habe, brauchst du die Länge der Bits um festzustellen, ob sich das Signal geändert hat oder nicht. Also ob du 111 oder 11 empfangen hast.
Wenn du das wissen willst, dann musst du zumindest die Gesamtlänge wissen.

Ich geh mal davon aus, dass du von irgendwo Daten einlesen willst. Dafür hat man typischerweise eine zweite Leitung mit Clock, oder man hat eine definierte Länge der einzelnen Bits.
Wenn man beides nicht hat, benutzt man ein anderes Verfahren: Schau dir da mal die Manchester-Kodierung an, die arbeitet über steigende und fallende Flanken.

Mal doch einfach mal ein Bildchen, damit man mal das ganze System überblicken kann...