完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
在驱动伺服或步进电机的时候,都需要用精确的PWM脉冲数。并且PWM的频率都还挺高,一般100kHz,还可能是多路同时工作,比如驱动4个伺服。
大体看到有两种做法可以实现精确的脉冲数:1,外部再弄个IO口接到PWM脚上,用外部中断的办法,单独来计数。此办法可行,但非常不科学,并且浪费资源。 2,使用定时器,使用一个和PWM频率一致的定时器,使用定时器中断来计数。此方法比第一种办法好了很多,但是仍然感觉比较笨。 STM32的定时器寄存器中有一个重复次数寄存器RCR。 这个寄存器在定时器中可以使用,个人想,若这个重复次数能做到PWM的重复次数计数该多好? 请问大伙,这个能实现吗?或者有不用每个脉冲中断一次的办法实现PWM的精确计数吗? |
|
相关推荐
37个回答
|
|
|
我也遇到了上述问题求教
|
|
|
|
|
|
我也遇到了上述问题求教
|
|
|
|
|
|
学习一下,谢谢!
|
|
|
|
|
|
中断不要想了,其设计目的就不是干这个的
|
|
|
|
|
雨小了111 发表于 2019-3-13 19:40 可以详细说说方法吗,我想用DMA来控制脉冲输出个数,但搞不清思路 |
|
|
|
|
|
有点意思,楼主加油
|
|
|
|
|
|
帮你顶一下
|
|
|
|
|
|
|
|
|
|
|
|
为什么不用比较输出
|
|
|
|
|
|
定时器内部互联,一个PWM输出脉冲给另一个定时提供时钟,每来一个脉冲,计数器值+1,当+到指定个数后,产生一次中断,然后关闭PWM输出。
参照https://wenku.baidu.com/view/f75e57c5cfc789eb162dc84b.html 如果测试能实现你的需求,请总结一下! |
|
|
|
|
|
很好谢谢!!
|
|
|
|
|
|
|
|
|
|
|
lanziji 发表于 2019-3-13 19:02 哥你的两路控制代码可以发我参考一下么??感激不尽1355874147@qq.com邮箱 |
|
|
|
|
|
学习了
|
|
|
|
|
|
学习一下
|
|
|
|
|
雨小了111 发表于 2019-3-13 19:40 频率最大可以达到多少呢? |
|
|
|
|
|
非常感谢!学习了!!!!!
|
|
|
|
|
|
非常感谢!学习了!!!!!
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1445 浏览 1 评论
1115 浏览 0 评论
976 浏览 0 评论
STM32F405驱动DS1302时钟模块,输出时间错乱该怎么排查?
5355 浏览 2 评论
stm32f405rgt6驱动DS1302ZN出现时间错乱问题
4148 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-14 11:41 , Processed in 1.090173 second(s), Total 76, Slave 69 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
16490