ИМХО пик или ноль в этой схеме ловить совершенно не нужно, имея МК. Нужно взять 180 значений синуса и косинуса для углов от 0 до 358 с шагом 2. На самом деле там реально разных значений всего 45, остальное повторы и повторы со знаком минус. И посчитать сумму произведений входного сигнала с АЦП в 180 точках круга на соответствующие синусы и косинусы. Получим 2 числа:
A = sum(U_k*cos(Alfa_k)), Alfa_k = 2*k град., k=0..179
B = sum(U_k*sin(Alfa_k)), Alfa_k = 2*k град., k=0..179
Эти числа - ни что иное, как действительная и мнимая части первого коэффициента преобразования Фурье входного сигнала - соответствующего основной гармонике, т.е. частоте "вращения" антенного переключателя. По ним легко определить азимут - это просто фаза этой гармоники, то есть arg(A+i*B), считается обычно через арктангенс (его тоже задают таблицей на отрезке от -1 до 1):
если А>B и A>-B, то Phi = arctg(B/A);
если А<B и A>-B, то Phi = 90 град. - arctg(A/B);
если А<B и A<-B, то Phi = arctg(B/A) + 180 град.;
если А>B и A<-B, то Phi = 270 град. - arctg(B/A);
Типа все. Если не лезть в плавающие числа (а все что я написал легко считается в числах с фиксированной запятой, сразу в нужном масштабе) - атмега справится легко. Хотя меня гложут смутные сомнения насчет необходимости 180 точек - будет ли реальная точность хоть немного близка к задуманной? Насколько скажется то, что антенну мы не крутим, а только переключаем 4 штуки? Хотя тем МК и хороши, что можно на том же железе пробовать с разным числом точек.
Вот. Убедиться, что это сигнал, а не шум, можно будет наблюдая за полученным значением. Если оно скачет как дурное по всему кругу - значит это шум. Если стоит примерно в одном месте - значит сигнал
Ну еще возможно амплитуда (корень из A^2+B^2, на крайняк сойдет приближение в виде |A|+|B|) будет нести определенную информацию..
Добавлено спустя 9 минут 4 секунды:А - да, чего забыл написать, можно ж (и нужно) не по одному периоду вращения суммировать, а по многим, к примеру по 512, тогда инфа будет обновляться примерно раз в секунду, но зато она будет неслабо отфильтрована от всего, кроме требуемого 500 Гц сигнала. И уж тогда наверняка у шума |A+i*B| будет намного меньше, чем у сигнала.