Извиняюсь, - исправил последний пост и картинку, так как была ошибка в алгоритме.
По поводу нестабильности положения заднего фронта импульса с TSOP есть такая версия. Судя по даташиту для обнаружения присутствия сигнала TSOP'у нужно от 7 до 15 периодов несущей на входе. Соответственно после обнаружения (когда уже на выходе "0") нужно чтобы сигнал полностью отсутствовал не менее 6 периодов прежде чем TSOP примет решение выдать "1". Это опять таки для защиты от помех. Вдруг один импульс посреди пачки пропал ? Не считать же это окончанием пачки ?
Поскольку "наш" сигнал не продадает полностью, а просто убывает, то и решение об отсутствии его принимается в произвольный момент времени. То есть начинка приёмника на это не рассчитана. Поэтому и имеем на выходе не чёткие отсчёты, а сплошную "статистику".
Нет, с моей точки зрения не красиво оно выглядит. Не знаю, как там с реальным разрешением у УЗ дальномеров, ибо не щупал оные, но здесь, учитывая амплитуду шума, получается: реальное разрешение в импульсном методе не более 4 бит на сэмпл, а с замером длительности не более 3 бит на сэмпл.
Попробую "уплотнить" импульсный метод. Во-первых - отказаться от 8 бит (255 пачек) в пользу 7-и или 6-и бит (127 и 64 пачки, соответственно) разрешения на один замер. Это сразу же уменьшит время замера в разы, что позволит мерять чаще. Во-вторых - вместо пауз попробую выдавать сразу следующую пачку, но в противофазе с предыдущей. Т.е. 10101010010101010. Пока не знаю, будет ли этот трюк работать, - отпишусь.
По поводу контроллера - это же весёлый pic12f675. На борту из периферии EEPROM, АЦП, аналоговый компаратор, два простых таймера даже без режима сброса по совпадению, не говоря уже о всяких ШИМ. Подсистема прерываний - один вектор, а источник предлагается определять программно. Короче - этот Microchip, такой микрочип !
