Первоначально опубликовано CLON
  
Согласен компаратор - хорошее решение, но этого не достаточно. Например "дребезг" компаратора. Как его устранить? 
 | 
 
Есть протокол X10 для передачи сообщений по сети 220 В. Я думаю, там компараторы работают без дребезга. Коротко: компаратор выдаёт сигнал, а контроллер, если хочет передать 1, то генерит короткий ВЧ импульс (5 В, 120кГц, 1мс, запаздывание 200мкс), для надёжности в следующий проход через нуль ничего не генерируется (отправка нуля). Нулевой бит передаётся соответственно нулём и единицей.
Первоначально опубликовано CLON
  
Полученные временные интервалы надо еще измерить. Для такой точности требуется тактовать их большой частотой (50 - 500 кГц). Сосчитать количество импульсов и расчитать частоту.  
 | 
 
Есть масса решений. Например, покупаете частотомер.
Второй вариант. Берёте модуль National Instuments, подводите к нему сигнал (наверное, это называется шунт), запускаете в LabView виртуальный частотомер (хотите - осцилограф).
Т.е. есть чисто приборная реализация, есть - с контроллерами, есть на уровне программ. Что вам больше нравится?