STM32舵机驱动参数设置

STM32舵机驱动参数设置_第1张图片

 

大家都知道,数字舵机一般遵循20ms时基脉冲,2.5%-12.5%占空比对应0~180°。

而舵机驱动需要设置的参数较多,而网上的资料十分纷杂,直接入手很容易陷入僵局。

驱动程序主要有以下几个参数:

arr——自动重装载值,定时器从0开始计数(CNT),大于arr就会溢出从0开始计数

psc——时钟预分频数,计数频率为(当前定时器的分频Tclk/psc+1)芯片和定时器不同,定时器的分频也不同。可以通过芯片的时钟树来确定,当然有的资料会写。里面有比较多的规则,自己查还是比较费脑

STM32舵机驱动参数设置_第2张图片

 这里我是108MHz(APB1的两倍)

接着计算计数器计数一次的时间:(psc+1)/Tclk是当前定时器计数一次的时间,(arr+1)*(psc+1)/Tclk为定时器溢出时间,应该等于20ms(加一是因为从0计数)

arr和psc可以自己取值,有范围我忘记了,但是很大

定时器指向的CCRx/arr就是占空比,根据2.5%和12.5%就可以算出CCRx的范围应该是多少了

你可能感兴趣的:(stm32)