完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
联控智能无刷电机板子运行STM32 FOC 5.x电机库的程序,电机转起来,过一会儿就自己停了。用调试器一看,发现程序进入了Hard Fault里面卡死了。
这是因为,驱动程序的运行频率(也代码的运行速度)太高了。对于特定的驱动程序,驱动程序的运行速度太高了。问题。 联控智能STM32F405RG低压板的FOC例程的频率是168MHz,这个频率太高了。将主频降低至84MHz,而APB1 42MHz和APB2 84MHz的不变,可以解决问题就频率了。 用MotorControl Workbench生成工程的时候,可以在STM32CubeMX中配置目录树,将主频改为84MHz。 生成的目录代码如下: 实验验证,可能是方波程序,168MHz的频率下,在主函数的while(1)里面加上ADC电压采集的代码,同时让电机转得快一点,就很可能产生Hard Fault。都要卡死,更不用说复杂的FOC电机库了。 |
|
|
|
只有小组成员才能发言,加入小组>>
2371 浏览 0 评论
8683 浏览 4 评论
36409 浏览 18 评论
4967 浏览 0 评论
24179 浏览 34 评论
1337浏览 2评论
1586浏览 1评论
1954浏览 1评论
1400浏览 0评论
1835浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-10 18:13 , Processed in 0.488765 second(s), Total 42, Slave 37 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号