И еще немного поиграл. Взял вот такой TCXO
http://www.ebay.com/itm/Vectron-20MHz-T ... 1032108148
Он не подстраивается напряжением, а только отверткой. Тот же STM32F103 считает его импульсы между секундными импульсами от UBLOX 6M.
Результаты радуют. За пару часов частота стоит, как часовой, между 20,000,003 20,000,004. Понятно, что последняя цифра будет в любом случае меняться. Очень редко 20,000,002 или 20,000,005. Раз в минуту. Т.е. jitter GPS не велик - не более 50 нс. А главное, модуль за $3 очень неплохо держит частоту.
При напряжении от 4 до 5 вольт уходит на 10 Гц - 0.05 ппм. Это я все к тому что для достаточно точного частотомера пойдет весьма недорогой генератор.
Даже если не встраивать GPS калибратор, можно подстраивать прямо по секундным импульсам с GPS.
А теперь такая мысль. И вопрос в основном к HHIMERA: будет ли работать?
В методе HHIMERA после грубого определения периода входного сигнала, запишем в TIM2->ARR значение N, которое бы в итоге давало импульс не 1 сек, а (при достаточно высокой входной частоте) скажем 10 мс. И не один импульс, а периодичиские. И по этому импульсу будем не
gate включать, а
capture. Если я правильно понял, можно триггер для capture заводить от внутреннего сигнала. Ну, а если нельзя, то через наружные ножки соединим. Теперь примерно через каждые 10 мс получим кол-во тактовых импульсов на N входных. Т.е. time stamping. И через скажем секунду по 100 таким отсчетам подсчитаем хоть среднее, хоть линейную регрессию построим. Кроме того, если частота не постоянна, то это тоже будет заметно.