微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > STM32F103如何输出精准的脉冲数?

STM32F103如何输出精准的脉冲数?

时间:10-02 整理:3721RD 点击:
我要控制6路步进电机不知道怎么样实现6路的精准的脉冲数输出!望高手指点迷津

我跟你的问题一样,不过我是两路,我现在用的是定时器进行IO翻转,周期最小能达到10us,个数也能控制准确,这样的做法好处在于算法容易编写,但是大量的进入中断,占用过多的CPU资源,这是不足的!
我还试过一种方法,就是PWM方式,在输出比较中断中对输出的脉冲计数,当到达指定个数后,关闭PWM,这种方法我还没调通,第一次还是很准的,第二次开启PWM之后,个数就不对了,不知道为什么

用高级定时器TIM1或TIM8,可同时输出6路PWM波

结贴了!

定时器pwm模式,开溢出中断比较匹配中断。我用的方式是禁止输出pwm和使能输出,看很多人都是通过开关定时器实现的,我不知怎么就是挑不出来。我的方式也行,溢出中断计数,计1个数就是输出一个pwm,到指定次数后禁止pwm输出。我之前做的超声波测距就是这种方法,不过是1路的,你可以参考下。

小编有结论了吗?给大家参考一下

没有!放一边了!现在弄别的单片机了!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top