STM32-PWM驱动舵机——HAL库

什么是舵机?

舵机,也叫伺服电机,在嵌入式开发中,舵机作为一种常见的运动控制组件,具有广泛的应用。

舵机型号介绍:

市面上常见的舵机型号有 SG90、MG90S、MG995、MG996R 等等,主要是扭矩大小、工作电压大小、齿轮材质塑料或金属的不同。

一般分为180度和360度:

  • 180度:可以控制旋转角度、有角度定位。上电后舵机自动复位到0度,通过一定参数的脉冲信号控制它的角度。
  • 360°舵机版本不可控制角度,只能控制顺时针旋转、逆时针旋转、停止和调节转速。

引脚接线参考如下:

SG90 STM32
PWM 信号线(橙色线) 任意GPIO
VCC(红线) 3.3/5V
GND(棕色线) GND

SG90原理

        舵机的控制信号是通过脉冲宽度调制(PWM)来实现的。PWM 信号的周期通常为20ms,而脉冲宽度则在 0.5ms 至 2.5ms 之间变化。这个脉冲宽度与舵盘的位置呈线性关系,范围从0度到180度。

        当给舵机提供特定宽度的脉冲信号时,输出轴会保持在相应的角度上,不受外界转矩的影响,直到接收到不同宽度的脉冲信号才会改变输出角度,使舵盘移动到新的位置。舵机内部有一个基准电路,产生周期为 20ms、宽度为 1.5ms 的基准信号。同时,还有一个比较器,用于将外部输入信号与基准信号进行比较,以确定转动方向和幅度,并生成驱

在使用HAL驱动STM32PWM信号来控制舵机时,可以按照以下步骤进行操作: 1. 首先,选择合适的定时器和通道来生成PWM信号。根据引用\[1\]中的描述,本次使用的是180°舵机,因此需要选择支持180°角度控制的定时器和通道。 2. 在初始化阶段,设置定时器的预分频值(Prescaler)来控制PWM信号的频率。根据引用\[2\]中的描述,预分频值可以根据需要进行调整,以满足舵机的控制要求。 3. 在主循环中,使用HAL提供的函数__HAL_TIM_SET_COMPARE来设置PWM信号的占空比,从而控制舵机的角度。具体的设置方法可以参考引用\[3\]中的代码示例。 需要注意的是,具体的代码实现可能会因为使用的STM32型号和HAL版本的不同而有所差异,因此在编写代码时需要参考相应的文档和示例代码。 #### 引用[.reference_title] - *1* [STM32F103C8T6(HAL驱动舵机](https://blog.csdn.net/weixin_44597885/article/details/129257514)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [stm32f103C8T6 HAL PWM驱动舵机(2)](https://blog.csdn.net/qq_57473348/article/details/124266538)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [stm32HAL学习笔记----pwm驱动舵机](https://blog.csdn.net/qq_64560177/article/details/127564391)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RY7_27

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值