Я декодировал как - сначала по стартовым битам вычислял время единицы, потом принимал остальное и в зависимости от времени между переходами складывал нули и единицы. Просто таймер для определения времянок я повесил в обработчике того же таймера, который и шим генерирует. Получается 4 мкс. Наверное нужно попроще переписать.