Цитата(nicom @ Mar 1 2007, 17:22)

читаем ТЗ дальше ВНИМАТЕЛЬНО:
...тогда если получится измерить частоту наибольшего по уровню, то будет хорошо....
Тогда вспоминаем тригонометрию..
Допустим, в диапазоне частот от 1220 МГц до 1300 МГц есть два сигнала:
x(t) = cos(2*pi*F*t), и
y(t) = cos(2*pi*(F+200kHz)*t),
где F - частота несущей /или после Вашего "прескалера"/.
Их сумма равна:
s(t) = x(t)+y(t) = cos(2*pi*F*t)+cos(2*pi*(F+200kHz)*t) = 2*cos(2*pi*(F+100kHz)*t)*cos(2*pi*100kHz*t).
Предложенный Вами алгоритм, основанный на использовании счетчика, в сущности подсчитывает
количество нулей функции s(t) на отрезке 300 мкс, поэтому имеет смысл оценить вклад
каждого из множителей в общее кол-во нулей.
Количество нулей связанных с первым множителем равно: N1 = 2*(F+100kHz)*300мкс.
Количество нулей связанных со вторым множителем равно: N2 = 2*100kHz*300мкс.
Однако, общее число нулей N функции s(t) отнюдь не равно сумме N1+N2.
Если частота F такова, что F+100kHz = M*100kHz,где M - целое, то нули второго множителя
совпадают с нулями первого и частота, которую измерит Ваш "частотомер" будет равна F+100kHz.
Но импульса с такой частотой нет на входе Вашего "частотомера", его даже нет в пределах
указанной погрешности: +/-50kHz..
Более того, в зависимости от того, насколько точно выполняется совпадение: F+100kHz = M*100kHz
частота, которую измерит Ваш прибор будет "плавать" в пределах F+100kHz...F+200kHz.
Какая уж тут точность!
Итог: Ваш 100 долларовый прибор идет ко дну..