对STM32定时器输出PWM驱动舵机个人理解

借鉴:开源STM32使用HAL库开发舵机云台_哔哩哔哩_bilibili

pwm = 主频 / ((ARR+1)*(PSC+1))(单位:Hz)

比如时钟设置为72M,那么预分频器设置为719,那么就是计时器每次计数10微妙um,对应50Hz(1HZ=1S=0.1ms=10um),重装载值0-65535之间,假如设置为1999,也就是20000微秒=20毫秒,每20毫秒一个周期(舵机设置为20ms才能转角度),

占空比 = CCR / (ARR + 1)

假如CCR为100,也就是COMPARE是100,对于舵机,占空比=100/(2000)=0.05=5%占空比

__HAL_TIM_SET_COMPARE(&htim2,TIM_CHANNEL_1,100);

第三个实参就是CCR的值

再算时间:0.05*20ms=1ms

1ms是高电平时间

对应舵机转动的角度:

0.5ms: -90° CRR为50时

1ms: -45° CRR为100时

1.5ms: 0° CRR为150时

2ms: 45° CRR为200时

2.5ms: 90° CRR为250时

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值