![8bec7011757bc2580a9a50b857d555b0.png](https://i-blog.csdnimg.cn/blog_migrate/2f255e5d08c7dfaeaaa1cb9bb727fc9f.jpeg)
前言
之前有一个人让我帮他配置了一下用DMA控制脉冲个数的程序,他有固件库的版本,让我帮他弄个CUBEMX版本的,我之前也没弄过,试了一下,感觉这个还是挺有价值,虽然也不是很难,不过有些细节问题还是需要注意一下。后面一些做步进电机控制的同学可能会参考。
CUBEMX配置:
![aea3830298b7fd593c6c248cfc40b02a.png](https://i-blog.csdnimg.cn/blog_migrate/dc0855a7772de6a5c608cef414c8daeb.jpeg)
![0dc2dd9c7aaeda4346ac41d8914283de.png](https://i-blog.csdnimg.cn/blog_migrate/eed4ae807485f6480216c5a548789a32.jpeg)
![d134c03991c314a6005ed596d8ce1b2b.png](https://i-blog.csdnimg.cn/blog_migrate/7987f53f1c4bf9e8ac48822d7007c366.png)
上面是控制4路PWM,存储4路PWM的占空比数据,声明的是4000,所以就是存储4000个占空比数据,也就是,最多控制4000个脉冲,如果需要增加,自行修改。
![94b662e6d5b7ccab2ad610c7c9ab55f5.png](https://i-blog.csdnimg.cn/blog_migrate/fb347c237e95bbad82fa408ba800a18c.jpeg)
![34175a132d2c503bb26ef9b6e56f4da1.png](https://i-blog.csdnimg.cn/blog_migrate/c3ab0de25ceb4ffaba7e98c2a30563a8.jpeg)
![4a9fd3cb5b0886979ae326d7ee1ead79.png](https://i-blog.csdnimg.cn/blog_migrate/e8e70b0918b88f62c78d5c6afec748e5.jpeg)
![5576f589caa6bb33c100801d1deb4e22.png](https://i-blog.csdnimg.cn/blog_migrate/fe8a3739a3cfe13289feb4bfdc1503fb.jpeg)
![a5c087726323fbfb92256f1e25074f12.png](https://i-blog.csdnimg.cn/blog_migrate/b1c2d570accbf34fee245966dee5b0d7.png)
代码:
/**
之前有一个人让我帮他配置了一下用DMA控制脉冲个数的程序,他有固件库的版本,让我帮他弄个CUBEMX版本的,我之前也没弄过,试了一下,感觉这个还是挺有价值,虽然也不是很难,不过有些细节问题还是需要注意一下。后面一些做步进电机控制的同学可能会参考。
CUBEMX配置:
上面是控制4路PWM,存储4路PWM的占空比数据,声明的是4000,所以就是存储4000个占空比数据,也就是,最多控制4000个脉冲,如果需要增加,自行修改。
代码:
/**