想做步进电机调速,我采用动态修改TIM3的预分频值PSC,但是不能工作
TIM3->
SC ,预分频值能任意修改为任意值吗?能动态修改吗?
我动态修改这个值发现定时器不能正常工作
我想在where循环里,根据事件来动态修改分频值,但是无效,我并不想动态修改重装值 TIM3->ARR,因为这种调速的方法变化幅度太大,比如ARR为1时和ARR为2时步进电机速度变化1倍,这种变化太剧烈,不够线性平滑
我的代码如下:
TIM3->ARR = 1;//重装值
TIM3->
SC=value;//value是71-7100之间的连续值,有可能是82,95,103.。。。。。
TIM3->CR1 |= 0x81;//启动定时器
但是我发现这样做定时器不能工作,不知道为什么?
PSC能不能直接修改还没有测试过,但是通过上式可以发现arr和psc是同等地位,两者在可改动范围效果应该是一样的
一周热门 更多>