Цитата(=GM= @ Apr 10 2007, 12:42)

Картинки хорошие, но неполные. Внизу под меандром надо нарисовать много-много импульсов опорной частоты, это будет наше время, заполнение, как угодно назовите.
Вот вы написали "Оно сработало" в конце периода Т1 (ваши обозначения на рис.1). Что это означает? Это означает, что содержимое таймера1 от "мелкого" опорного меандра (который вы не нарисовали) переписалось в регистр ICR1, его надо запомнить, а прерывание запретить (в принципе, можно не запрещать, просто не обращать внимания, если время и вычислительная обстановка позволяет, важно, что нужно только первое, которое даёт время начала вашего окна).
Отмечу, что таймер1 продолжает работать, отсчитывает длительность окна. В начале времени Т2 на вашем рисунке надо разрешить прерывание опять, всё так, дождаться когда оно сработает (конец периода Т2 на вашем рисунке), и запомнить время, сохранённое в ICR1.
Затем нужно вычислить разность этих времен. Что нам даст эта разность? Эта разность N нам даст время (в тиках таймера1) между первым фронтом входной частоты и последним фронтом. Причём это время будет не приблизительным, а ТОЧНЫМ, с точностью ±1 такт. В то же самое время, таймер0 подсчитает количество импульсов входной частоты М. Теперь вы имеете на руках М, N и Fo и по формуле можете посчитать Fx.
Скажу ещё раз, для ясности. Сигнал измеряемой частоты надо подать на вход ICP1 и вход timer0/counter0, который работает как счётчик, в то же время timer1 работает как таймер, считает импульсы опорной частоты.
Спасиб за классное обяснение, учитывая частоты Ваш метод меня устроил
и для моего случая он отимален.
И ещё, мне кажется что Вы немножко спешите Всех критиковать за невнимательность
а сами тоже невнимательны.
Я извинился за неправильную постановку вопроса в названии контроллера,
defunct , правильно это заметил! это мой ответ резиденту в самом начале!!
m168, см comment #2
Что за comment #2? На заголовок темы посмотрите.
Да и приятно провести время в отпуске!!!
Цитата(defunct @ Apr 16 2007, 20:39)

это ограничение действует на всю синхронную периферию. Но для асинхронного таймера поидее не важна частота процессора, собсно я и хочу испытать его возможности.
Вприцыпе, идея интересна потому только что я не знаю как работать с асинхронным таймером
и его возможностями. С внешним счётчиком видел где-то схему частотомера на 2313том до 40МГц.
Желаю удачи!
Цитата(defunct @ Apr 16 2007, 20:39)

это ограничение действует на всю синхронную периферию. Но для асинхронного таймера поидее не важна частота процессора, собсно я и хочу испытать его возможности.
Взял описсание злостной АТмеги 168 таймер 2 и выделил два момента:
- The CPU main clock frequency must be more than four times the Oscillator
During asynchronous operation, the synchronization of the Interrupt Flags for the asynchronous
timer takes 3 processor cycles plus one timer cycle. The timer is therefore
advanced by at least one before the processor can read the timer value causing the setting
of the Interrupt Flag. The Output Compare pin is changed on the timer clock and is
not synchronized to the processor clock.
Вашу идею не совсем понимаю.