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

Тахометр на STM32F103  

  RSS
KNF18
(@knf18)
New Member

Хочу сделать тахометр на STM32F103 и датчике холла 3144.
Настроил таймер 3 на режим зазвата:

Соответственно вывод с датчика холла подключил к выводу PA6.

Тактирование:

Настройка таймера:

Перед основным циклом запускаю таймер 3 и разрешаю захват:

HAL_TIM_Base_Start_IT(&htim3);
	HAL_TIM_IC_Start_IT(&htim3, TIM_CHANNEL_1);

В main добавил коллбэк:

void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim)
{
	if( htim->Instance == TIM3  )
	{
		if( htim->Channel == HAL_TIM_ACTIVE_CHANNEL_1 )
		{
			__HAL_TIM_CLEAR_FLAG(htim, TIM_FLAG_UPDATE);
			period_width = HAL_TIM_ReadCapturedValue(htim, TIM_CHANNEL_1);   //период сигнала
		}   
	}
}

Значение таймера в

period_width

Считывается.
Возникает несколько вопросов:
1)

 __HAL_TIM_CLEAR_FLAG(htim, TIM_FLAG_UPDATE);

время таймера сбрасывается или мне его нужно сбрасывать?
2) По какой формуле вычислять обороты?

Цитата
Размещено : 12.10.2018 00:56
KNF18
(@knf18)
New Member

Что то теги совсем не работают(

ОтветитьЦитата
Размещено : 12.10.2018 01:00
Поделиться:

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

Profile Profile Profile Profile Profile
Vkontakte
Twitter

Язык сайта

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

© 2013-2020 MicroTechnics.ru