Управляем коллекторными двигателями с помощью драйвера TB6612FNG.
Сегодня мы подключим коллекторный двигатель и будем управлять его скоростью и направлением движения. Для подключения будем использовать драйвер TB6612FNG.
Схема подключения следующая:
В данном случаи я управляю одним мотором, но можно управлять и двумя.
Для написания программы, мы будем пользоваться уроками по STM32f103 (Подключение ШИМ к микроконтроллеру STM32f103), с единственной разницей, что у нас в настройке STM32CubeMX, мы установим делитель таймера равным 7:
Код самой программы:
/* USER CODE BEGIN 1 */ uint32_t i,j; /* USER CODE END 1 */
/* USER CODE BEGIN 2 */ HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_1); HAL_TIM_PWM_Start(&htim3, TIM_CHANNEL_1); i=30000; TIM2->CCR1=i; /* USER CODE END 2 */
/* USER CODE BEGIN 3 */ if ((HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_1)==0)&&(i<65535)){i++;TIM2->CCR1=i;for(j=0;j<700;j++){;}} if ((HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_0)==0)&&(i>18000)) {i—;TIM2->CCR1=i;for(j=0;j<700;j++){;}} } /* USER CODE END 3 */