大家好,请教一个问题:我用
STM32f103c8作为主控通过功率驱动
电路来控制一个有刷直流电机,当电机速度增大(增大PWM占空比)到一定程度时,stm32就停机了,PWM停止没有输出,其他功能也停止了工作,按理说应该是stm32受到干扰代码跑飞了,但奇怪的是,当我去转动几下电机轴后stm32又接着开始正常工作了(没有重启,速度还是停机前的速度),过一会又停机了,再转动几下电机轴后stm32又接着开始正常工作了,非常奇怪的是在stm32停机的时候它处于一个什么状态?难道是时钟停止了工作?请各位分析一下原因,谢谢。
另外好好检查下各个电源脚的连接和焊接情况;
不排除虚焊的可能,我有过此案例。PWM输出有时有,有时无!后来拿放大镜看才发现引脚搭焊在PCB上,焊锡没有流通,重新焊接后就OK了。
本帖最后由 科科1987 于 2018-1-19 11:41 编辑
谢谢指导!
更换了代码(非常简单,仅上电后打开PWM),电机运行一会停止,手动转动电机轴有恢复了。
焊接检查没有问题。
谢谢!
1、有光耦隔离;
2、不是H桥,单个mos管控制;
3、用示波器看过,排除了功率不够的可能;
现象是:速度调高后,PWM和部分IO没有输出,好像是失效了。
一周热门 更多>