Den Unterschied zwischen 100ms und 200ms stellst du ganz einfach fest: Sobald du ein Signal empfängst, startest du eine Zeitschleife mit beispielsweise 150ms. Direkt danach prüfst du, ob das Signal immer noch da ist. Wenn ja, war das Signal mindestens 150ms lang => 200ms, ansonsten 100ms. Falls das Signal "lang" war, musst du dann noch mal über 50ms warten, am besten nochmal 150ms, weil dann das Signal auf jeden Fall wieder weg ist. Dann wartest du so lange, bis das Signal wieder da ist und das Ganze beginnt wieder von vorne.