MG995舵机在stm32中

为什么MG995舵机在一样的程序下 那个频率 占空比一样 有的舵机可以动 有的却 不可以动 是为什么?

你这问太笼统了,咋回答你啊,硬件问题,接线问题,你要是这个管脚驱动成功,另一个管脚驱动不成功的这种情况,你软件配置问题,你驱动问题,脑补回答你啊

  • 这篇博客: STM32应用(一)控制舵机SG90/MG996R/数字舵机中的 1.3 工程配置和代码编写 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 时钟树的配置基本配置。

    开启定时器3的通道1,APB1上的时钟频率为84Mhz。

    在这里插入图片描述
    84M/84=1Mhz,即在1s内计数一百万次,我们需要设定20ms,则重装载值应为20000。
    在这里插入图片描述
    检查GPIO。
    在这里插入图片描述

    while中代码:

    		__HAL_TIM_SetCompare(&htim3,TIM_CHANNEL_1,500);//0°
    		HAL_Delay(1000);
    		__HAL_TIM_SetCompare(&htim3,TIM_CHANNEL_1,1000);//45°
    		HAL_Delay(1000);
    		__HAL_TIM_SetCompare(&htim3,TIM_CHANNEL_1,1500);//90°
    		HAL_Delay(1000);
    		__HAL_TIM_SetCompare(&htim3,TIM_CHANNEL_1,2000);//135°
    		HAL_Delay(1000);
    		__HAL_TIM_SetCompare(&htim3,TIM_CHANNEL_1,2500);//180°
    		HAL_Delay(1000);