想做步进电机调速,我采用动态修改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是同等地位,两者在可改动范围效果应该是一样的
---------------------------------
不太明白,我是在定时器中断里对步进电机进行推动的
你的Tout是指什么意思呢?
---------------------------------
1.关于是否能够修改TIM3->SC,4楼解疑老师已经说明
2.我对这块也经常迷糊,在此探讨一下。我的出发点是不赞同你说的 动态修改TIM3->ARR变化幅度大,在我看来修改两者都是可以的。不清楚你在中断里是怎么进行步进电机推动的
---------------------------------
我也正在研究,修改ARR时输出的频率在高频段变化幅度太大
一周热门 更多>