Технический форум по робототехнике.
Alim » 04 май 2012, 12:21
И снова всем привет.
Необходимо посчитать частоту
переключения кнопки за определенное время.
Пытаюсь подключить анемометр к микроконтроллеру,
но так с таймерами не знаком
не понятно как и с чего начать.
Посоветуйте кто чем...
elmot » 04 май 2012, 12:53
Контроллер какой?
Alim » 04 май 2012, 13:05
atmega8535
elmot » 04 май 2012, 13:36
Не, тада не ко мне.
Alim » 04 май 2012, 15:37
Madf » 04 май 2012, 16:59
А что за "анемометр" пытаетесь подключать? И вообще в чем суть идеи? А то как бы название темы "Таймеры, прерывания,счетчики" - не о чем.
mikkey finn » 04 май 2012, 19:46
Название неверное, а по сути вопроса - мега с аснхронным режимом таймера вполне подойдет для ТОЧНОГО определения. Для неточного тоже. Алгоритм такой:
0. Проводим расчеты, источник частоты должен быть стабилен, то есть кварцевый резонатор. Для асинхронного таймера - 32768Гц, другие таймеры - выбрать подходящий предделитель по даташиту. В результате расчета надо получить количество переполнений таймера, на заданный временной интервал, например для кварца 32768Гц 8-ми разрядный таймер за секунду переполнится 128 раз без делителя частоты.
1. запускаем таймер при запуске устройства, датчик, с которого снимаем частоту надо подключить к ноге "внешнее прерывание", например INT0, ногу настраиваем, например, на высокий уровень срабатывания
2. По прерыванию INT0 увеличиваем переменную импульсов датчика.
3. по прерыванию "переполнение таймера" уменьшаем переменную переполнений. Если переменная переполнений стала отрицательной при очередном уменьшении - ставим ей исходное значение, смотрим переменную импульсов датчика. В ней будет число импульсов(оборотов или чего-то еще) за заданный интервал времени - частота оборотов/импульсов.
4. по желанию - выдаем частоту в UART или на индикатор.
Это если софтово. Если аппаратно - задействуем два таймера - один в режиме счетчика внешних импульсов, другой в режиме измерителя. Переменная счетчика импульсов не нужна. Будет два прерывания все-равно - прерывание по переполнению таймера-измерителя времени, прерывание по переполнению таймера-счетчика импульсов(вдруг слишком быстро крутится?). Это уже на домашнее раскуривание. Примеры работы с таймерами есть у ДиХальта на easyelectronics.ru , рекомендую.
Alim » 05 май 2012, 15:23
Огромное спасибо всё предельно ясно объяснили
.
elmot » 05 май 2012, 20:27
Герконы будут или датчики холла?
Madf » 06 май 2012, 10:52
я так полагаю, можно сделать проще в алгоритме (судя из поста "mikkey finn"), но как бы входных данных мало..
mikkey finn » 06 май 2012, 20:21
это был алгоритм "в лоб". Можно поизвращаться, но зачем?
Alim » 08 май 2012, 20:15
будут герконы.
компоненты взяты с вышедшей из строя
метеостанции Ambient WS-1090.
Добавлено спустя 48 минут 20 секунд:
В осадкометры и анемометре по одному геркону а во флюгере 6.
- Вложения
-
- s_pic_12347_2_1.jpg (23.54 КиБ) Просмотров: 2272