Таймеры, прерывания,счетчики.

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

Таймеры, прерывания,счетчики.

Сообщение Alim » 04 май 2012, 12:21

И снова всем привет.
Необходимо посчитать частоту
переключения кнопки за определенное время.
Пытаюсь подключить анемометр к микроконтроллеру,
но так с таймерами не знаком
не понятно как и с чего начать.
Посоветуйте кто чем...
Alim
 
Сообщения: 36
Зарегистрирован: 09 апр 2012, 17:19

Re: Таймеры, прерывания,счетчики.

Сообщение elmot » 04 май 2012, 12:53

Контроллер какой?
Аватара пользователя
elmot
 
Сообщения: 5691
Зарегистрирован: 10 ноя 2011, 12:02
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья

Re: Таймеры, прерывания,счетчики.

Сообщение Alim » 04 май 2012, 13:05

atmega8535
Alim
 
Сообщения: 36
Зарегистрирован: 09 апр 2012, 17:19

Re: Таймеры, прерывания,счетчики.

Сообщение elmot » 04 май 2012, 13:36

Не, тада не ко мне.
Аватара пользователя
elmot
 
Сообщения: 5691
Зарегистрирован: 10 ноя 2011, 12:02
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья

Re: Таймеры, прерывания,счетчики.

Сообщение Alim » 04 май 2012, 15:37

на любую другую мегу :Bravo: :Bravo: :Bravo: :Bravo:
Alim
 
Сообщения: 36
Зарегистрирован: 09 апр 2012, 17:19

Re: Таймеры, прерывания,счетчики.

Сообщение Madf » 04 май 2012, 16:59

А что за "анемометр" пытаетесь подключать? И вообще в чем суть идеи? А то как бы название темы "Таймеры, прерывания,счетчики" - не о чем. :P
Madf
 
Сообщения: 3298
Зарегистрирован: 03 янв 2012, 12:55
Откуда: Москва
прог. языки: VB6, BASCOM, ASM...

Re: Таймеры, прерывания,счетчики.

Сообщение mikkey finn » 04 май 2012, 19:46

Название неверное, а по сути вопроса - мега с аснхронным режимом таймера вполне подойдет для ТОЧНОГО определения. Для неточного тоже. Алгоритм такой:
0. Проводим расчеты, источник частоты должен быть стабилен, то есть кварцевый резонатор. Для асинхронного таймера - 32768Гц, другие таймеры - выбрать подходящий предделитель по даташиту. В результате расчета надо получить количество переполнений таймера, на заданный временной интервал, например для кварца 32768Гц 8-ми разрядный таймер за секунду переполнится 128 раз без делителя частоты.
1. запускаем таймер при запуске устройства, датчик, с которого снимаем частоту надо подключить к ноге "внешнее прерывание", например INT0, ногу настраиваем, например, на высокий уровень срабатывания
2. По прерыванию INT0 увеличиваем переменную импульсов датчика.
3. по прерыванию "переполнение таймера" уменьшаем переменную переполнений. Если переменная переполнений стала отрицательной при очередном уменьшении - ставим ей исходное значение, смотрим переменную импульсов датчика. В ней будет число импульсов(оборотов или чего-то еще) за заданный интервал времени - частота оборотов/импульсов.
4. по желанию - выдаем частоту в UART или на индикатор.
Это если софтово. Если аппаратно - задействуем два таймера - один в режиме счетчика внешних импульсов, другой в режиме измерителя. Переменная счетчика импульсов не нужна. Будет два прерывания все-равно - прерывание по переполнению таймера-измерителя времени, прерывание по переполнению таймера-счетчика импульсов(вдруг слишком быстро крутится?). Это уже на домашнее раскуривание. Примеры работы с таймерами есть у ДиХальта на easyelectronics.ru , рекомендую.
mikkey finn
 
Сообщения: 104
Зарегистрирован: 09 авг 2011, 17:15
Откуда: Волжский

Re: Таймеры, прерывания,счетчики.

Сообщение Alim » 05 май 2012, 15:23

Огромное спасибо всё предельно ясно объяснили :good: :good: .
Alim
 
Сообщения: 36
Зарегистрирован: 09 апр 2012, 17:19

Re: Таймеры, прерывания,счетчики.

Сообщение elmot » 05 май 2012, 20:27

Герконы будут или датчики холла?
Аватара пользователя
elmot
 
Сообщения: 5691
Зарегистрирован: 10 ноя 2011, 12:02
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья

Re: Таймеры, прерывания,счетчики.

Сообщение Madf » 06 май 2012, 10:52

я так полагаю, можно сделать проще в алгоритме (судя из поста "mikkey finn"), но как бы входных данных мало..
Madf
 
Сообщения: 3298
Зарегистрирован: 03 янв 2012, 12:55
Откуда: Москва
прог. языки: VB6, BASCOM, ASM...

Re: Таймеры, прерывания,счетчики.

Сообщение mikkey finn » 06 май 2012, 20:21

это был алгоритм "в лоб". Можно поизвращаться, но зачем?
mikkey finn
 
Сообщения: 104
Зарегистрирован: 09 авг 2011, 17:15
Откуда: Волжский

Re: Таймеры, прерывания,счетчики.

Сообщение Alim » 08 май 2012, 20:15

будут герконы.
компоненты взяты с вышедшей из строя
метеостанции Ambient WS-1090.

Добавлено спустя 48 минут 20 секунд:
В осадкометры и анемометре по одному геркону а во флюгере 6.
Вложения
s_pic_12347_2_1.jpg
s_pic_12347_2_1.jpg (23.54 КиБ) Просмотров: 2268
Alim
 
Сообщения: 36
Зарегистрирован: 09 апр 2012, 17:19


Вернуться в Микроконтроллеры

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13