Частотомер на Atmega8

Обсуждаем контроллеры компании Atmel.
Ответить
Аватара пользователя
isx
Поставщик валерьянки для Кота
Сообщения: 2316
Зарегистрирован: Вс июн 26, 2011 20:03:21

Частотомер на Atmega8

Сообщение isx »

ДОброй ночи!!!
Речь не совсем таки о частотомере, в его стандартном представлении. Нужно на основе входящего сигнала (100 - 10000Гц) формировать код, в зависимости от того, какое значение частоты подводится к атмеге в данный момент. Возможно ли при таких частотах осуществлять измерение этой частоты каждую 1/20 секунду?
Реклама
Аватара пользователя
vitalik_1984
Поставщик валерьянки для Кота
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень
Контактная информация:

Re: Частотомер на Atmega8

Сообщение vitalik_1984 »

Конечно возможно, а в чем собственно вопрос?если минимальная частота 100 Гц, а частота измерений 20 Гц, то вполне можно сделать 4-5 измерений за это время(1/20 секунды) и даже провести конечное усреднение.Просто измеряется время между фронтами спада или подъема и считается частота.
Можно я думаю так же сделать измерение половины цикла, то есть при этом нужно значение частоты делить на два.

Какие есть наработки в этом направлении?И что значит формировать код?Вывод на USART?
Реклама
Аватара пользователя
isx
Поставщик валерьянки для Кота
Сообщения: 2316
Зарегистрирован: Вс июн 26, 2011 20:03:21

Re: Частотомер на Atmega8

Сообщение isx »

Наработок пока нет, все в рамках задумки ещё :)
Нет, не усарт. Код будет обрабатываться самим МК. Это будет некий АЦП но с гораздо большей разрядностью.
Просто ещё не совсем понял, частота измеряется по времени от фронта до фронта или по количеству фронтов за промежуток времени?
Аватара пользователя
VT1
Поставщик валерьянки для Кота
Сообщения: 2458
Зарегистрирован: Вс июл 11, 2010 14:39:04
Откуда: Россия.
Контактная информация:

Re: Частотомер на Atmega8

Сообщение VT1 »

isx писал(а):Это будет некий АЦП
АЦП то зачем в частотомере? :shock:
Наберите в гугле принцип действия частотомера и почитайте для начала, хотя об этом и здесь на форуме много раз писали.
Есть два основных принципа. Один измеряет частоту, другой период. Первый удобен на высоких частотах, а второй на очень низких, но во втором приходится делать еще одно преобразование для пересчета периода в частоту для того, что бы подать на индикацию. Хотя если делаете на МК, то это небольшая проблема и легко решается.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
isx
Поставщик валерьянки для Кота
Сообщения: 2316
Зарегистрирован: Вс июн 26, 2011 20:03:21

Re: Частотомер на Atmega8

Сообщение isx »

АЦП не в частотомере, а на основе частотомера )
Реклама
codenamehawk
Вымогатель припоя
Сообщения: 528
Зарегистрирован: Вт фев 09, 2010 17:52:26

Re: Частотомер на Atmega8

Сообщение codenamehawk »

Заводите измеряемый сигнал на внешнее прерывание.
Прерывание настраиваете на срабатывание по фронту сигнала.
При первом прерывании запускаете внутренний таймер, частота которого намного выше частоты измеряемого сигнала.
При втором прерывании записываете значения таймера, сколько импульсов он насчитал.
Зная длительность одного импульса таймера, высчитываете длительность измеряемого импульса и высчитываете его частоту.
На атмеге16 с 16МН кварцем, с довольно высокой точностью измеряю от 0.04 Гц частоту до 200 000 Гц.
(При частоте входных импульсов 0.04 Гц, время измерения около 25 сек.)
На частотах близких к максимальной, для повышения точности измерения, замер произвожу при приеме 256 или 512 входных импульсов.
Реклама
Аватара пользователя
isx
Поставщик валерьянки для Кота
Сообщения: 2316
Зарегистрирован: Вс июн 26, 2011 20:03:21

Re: Частотомер на Atmega8

Сообщение isx »

Ясно... Спасибо за информацию :)
Как дойду до практического решения ждите опять с вопросами :))
mikhail_kmm61
Родился
Сообщения: 13
Зарегистрирован: Вс окт 07, 2012 20:12:58

Re: Частотомер на Atmega8

Сообщение mikhail_kmm61 »

Уважаемый isx ! Не ищи в GOOGLE. А то, не дай бог, найдешь метод нулевых биений.
Смысл использования контроллера в его способности ВЫЧИСЛЯТЬ.
Fin=Fclk*m/n. Время измерения T выбираешь сам, исходя из минимальной измеряемой частоты.
Как видишь, в формуле время измерения T не присутствует, оно влияет только на погрешность измерения,
при этом относительная погрешность постоянна для любой входной частоты.
m -число периодов измеряемой частоты Fin за время T;
n - число периодов тактовой частоты Fclk за время T;
PS. Метод описан в какой-то книге по измерениям. Ссылку когда-то давал Леонид Иванович Ридико,
который (ИМХО) наверно уже устал этот принцип измерения частоты объяснять(продвигать).
Ответить

Вернуться в «AVR»