реклама на сайте
подробности

 
 
> Таймеры и прерывания
AiDream
сообщение Jan 24 2012, 09:16
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 8-09-11
Пользователь №: 67 064



Здравствуйте!
В программировании микроконтроллеров новичок, поэтому прошу не ругать сразу)
Встала задача:
На вход микроконтроллера постоянно поступают импульсы. Необходимо замерять временной интервал между ними, запоминать эти значения и проводить над ними простые математические операции.
Длительность импульсов - 5 мс, амплитуда - 12 В.
Пока что продумываю алгоритм.
Как я понимаю, надо настроить один из таймеров на запуск по входному нарастающему импульсу. Тут вопрос - остановится ли таймер по приходу следующего импульса, чтобы можно было считать накопленное им значение?
Заранее благодарю за помощь.

Цитата(AiDream @ Jan 24 2012, 11:47) *
Здравствуйте!
В программировании микроконтроллеров новичок, поэтому прошу не ругать сразу)
Встала задача:
На вход микроконтроллера постоянно поступают импульсы. Необходимо замерять временной интервал между ними, запоминать эти значения и проводить над ними простые математические операции.
Длительность импульсов - 5 мс, амплитуда - 12 В.
Пока что продумываю алгоритм.
Как я понимаю, надо настроить один из таймеров на запуск по входному нарастающему импульсу. Тут вопрос - остановится ли таймер по приходу следующего импульса, чтобы можно было считать накопленное им значение?
Заранее благодарю за помощь.

Расстояние между импульсами от 10 до 200 мс.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Палыч
сообщение Jan 24 2012, 09:24
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Вы не указали тип МК, который предполагается использовать.
Если AVR, то в таймерах есть (не всех, но - есть) "Input Capture": при определенном изменении уровня сигнала сохраняется значение счетчика таймера - легко вычислить длительность импульса.
Go to the top of the page
 
+Quote Post
AiDream
сообщение Jan 24 2012, 09:32
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 8-09-11
Пользователь №: 67 064



Цитата(Палыч @ Jan 24 2012, 12:24) *
Вы не указали тип МК, который предполагается использовать.
Если AVR, то в таймерах есть (не всех, но - есть) "Input Capture": при определенном изменении уровня сигнала сохраняется значение счетчика таймера - легко вычислить длительность импульса.

Спасибо)
Тип МК - AtMega88. Частота работы - 16 Мгц.
Посмотрел, вроде бы есть в нем такая функция.
То есть таймер запоминает время прихода внешних прерываний?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 26th June 2025 - 04:11
Рейтинг@Mail.ru


Страница сгенерированна за 0.01382 секунд с 7
ELECTRONIX ©2004-2016