Уведомления
Очистить все

Захват частоты и периода импульсов STM32F4  

  RSS
Руслан
(@ruslan)
Active Member

Всем доброго времени суток! Вообщем прочитал в документации что есть возможность захвата значения частоты и периода при помощью таймера. Использую таймер 3. Настройки: Slave Mode: Reser Mode, Trigger Source: TI1FP1, Clock Source: Interman Clock, Channel1: Input Capture direcr mode.

Так же включил прерывания.
Запускаю таймер
HAL_TIM_IC_Start_IT(&htim3, TIM_CHANNEL_1);
Как пришёл импульс в прерываниях снимаю значения.
temp = HAL_TIM_ReadCapturedValue(&htim3, TIM_CHANNEL_1);
Это как я понимаю я получаю частоту, как замерить период? Почему значения частоты плавают? По осциллографу всё нормально!

Цитата
Размещено : 21.03.2016 15:16
Aveal
(@aveal)
Администратор Admin

Привет!

Читая захваченное значение ты получаешь количество "тиков" таймера, которые он сделал с момента обнуления. То есть в теории работает так - при переднем фронте таймер обнуляется, при приходе заднего фронта ты считываешь количество "тиков" и переводишь их в секунды, зная на какой частоте работает таймер.

ОтветитьЦитата
Размещено : 21.03.2016 15:39
Руслан
(@ruslan)
Active Member

Это я понимаю, я не понимаю как сделать так чтобы таймер сначала посчитал от переднего фронта до заднего, а потом от заднего до заднего (или от переднего до переднего). У меня получилось от заднего до заднего, а как от переднего до переднего не понимаю (( Скину Вам проект на почту, если есть время посмотрите пожалуйста...

ОтветитьЦитата
Размещено : 21.03.2016 18:12
Aveal
(@aveal)
Администратор Admin

Ну он либо будет отлавливать задние, либо передние, либо и те и другие. Если надо к примеру у ШИМ сигнала измерять частоту и скважность, то настраиваются два канала, один из них захватывает передний фронт, а другой задний, при этом сигнал берут с одного входа.

ОтветитьЦитата
Размещено : 21.03.2016 21:08
Руслан
(@ruslan)
Active Member

Ошибся, не получается по переднего фронта до заднего... А не могли бы Вы дать пример захвата сигнала от переднего до заднего фронта?

ОтветитьЦитата
Размещено : 22.03.2016 12:20
Aveal
(@aveal)
Администратор Admin

У меня есть только для stm32f10x и без Cube - на SPL, подойдет? В принципе, вместе с драйвером HAL идет большое количество примеров для разных плат, возможно там есть подходящий для F4.

ОтветитьЦитата
Размещено : 22.03.2016 23:58
Поделиться:

Присоединяйтесь!

Profile Profile Profile Profile Profile
Vkontakte
Twitter

Язык сайта

Август 2020
Пн Вт Ср Чт Пт Сб Вс
 12
3456789
10111213141516
17181920212223
24252627282930
31  

© 2013-2020 MicroTechnics.ru