OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 8370|回复: 17

STM32控制电机驱动,当电机负载增加后,STM32程序运行速度变的很慢

[复制链接]

92

主题

202

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2014-3-14
在线时间
95 小时
发表于 2014-9-23 23:00:33 | 显示全部楼层 |阅读模式
5金钱
用STM32控制电机驱动,负载电机600mA运行正常。
                 收到信号后,电机加速,消耗电流1A,此时STM32运行速度变得很慢。加入LED每隔5ms闪动一次,1秒钟可以看见只闪几次。。再发出信号,让电机以600mA运行时,STM32运行代码速度又恢复正常,LED一直发光,肉眼无法辨别LED有闪动。。

  我怀疑,电机电流增加到1A后,STM32自动切换到了内部晶振。所以速度变的相当慢。。当电流切回600mA后,又自动恢复到了外部晶振。。

 请问怎样解决,电机消耗1A时,STM32运行代码速度变慢?小弟单片机刚入门,请大神门,提供点思路。。
          是怎样引起晶振停止,然后又自动恢。我的电源可以提供22V3A,现在电机最大才吃1A。。。应该不是供电不足。


/**********************************************
刚才测试了一下波形,发现,电机1A时应该不是晶振停振。。1A时芯片供电电压,也是正常的。这就奇怪了。为什么STM32速度变的很慢。。5MS间隔闪动的LED,在电流1A时,闪动很慢,1秒才闪2到3次。


电机1A时,测得晶振的波形,说明晶振是正常振动的。。。下面是1A时,芯片VCC电压。

最佳答案

查看完整内容[请看2#楼]

输出PWM波,控制,占空比来控制转速。。。有刷电机。。 搞定了,原来有两个引脚,我拉到5V上。。虽然手册上,这两个角,写着兼容5V。但是搞到5V,程序怎么死的都不知道。。改为3.3V,运行就正常了。。。头都搞大了,什么5V引脚,太坑爹了。。   现在结贴,以后,这单片机,不论是否兼容5V,都有用3.3V。。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

92

主题

202

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2014-3-14
在线时间
95 小时
 楼主| 发表于 2014-9-23 23:00:34 | 显示全部楼层
输出PWM波,控制,占空比来控制转速。。。有刷电机。。

搞定了,原来有两个引脚,我拉到5V上。。虽然手册上,这两个角,写着兼容5V。但是搞到5V,程序怎么死的都不知道。。改为3.3V,运行就正常了。。。头都搞大了,什么5V引脚,太坑爹了。。
  现在结贴,以后,这单片机,不论是否兼容5V,都有用3.3V。。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-9-24 00:04:29 | 显示全部楼层
我怀疑是不是你单片机受到干扰,进入中断太频繁了?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

92

主题

202

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2014-3-14
在线时间
95 小时
 楼主| 发表于 2014-9-24 00:11:14 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
有可能。那怎样解决,进入中断太平凡...。。原子哥,有什么解决的经验,教教小弟啊。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-9-24 00:47:35 | 显示全部楼层
回复【3楼】haohan163:
---------------------------------
你看为什么会频繁触发中断,外界是不是干扰了的?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

27

主题

259

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
387
金钱
387
注册时间
2014-8-19
在线时间
0 小时
发表于 2014-9-24 10:28:45 | 显示全部楼层
回复【3楼】haohan163:
---------------------------------
你的方案能发到我邮箱吗?我以前也出现过这现象dbh2011@126.com
回复

使用道具 举报

92

主题

202

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2014-3-14
在线时间
95 小时
 楼主| 发表于 2014-9-24 14:58:45 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
今天试验了,把用到的几个中断,全部都注释掉了。。还是这样,电机电流消耗1A后,速度就变慢,led闪动能肉眼观察到。。。
回复

使用道具 举报

92

主题

202

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2014-3-14
在线时间
95 小时
 楼主| 发表于 2014-9-24 15:44:22 | 显示全部楼层
回复【5楼】dongbaohui:
---------------------------------
现在发不了,公司正在用这个。
回复

使用道具 举报

92

主题

202

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2014-3-14
在线时间
95 小时
 楼主| 发表于 2014-9-24 15:48:39 | 显示全部楼层
做技术真苦逼啊。。。。折腾了半年的东西,眼看就要出来了,又遇到这个问题。。。。感觉晶振,VDDA,电源供电,波形都还比较好。。。今天都没有下一步怎么检查的思路了。。
回复

使用道具 举报

92

主题

202

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2014-3-14
在线时间
95 小时
 楼主| 发表于 2014-9-24 15:51:15 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
原子哥,请问一下,怎样设置, 当STM32外部晶振失效时,怎样禁用内部时钟。。。。我想禁用内部时钟看一下效果,是不是切换到内部时钟造成运行变慢的。
回复

使用道具 举报

92

主题

202

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2014-3-14
在线时间
95 小时
 楼主| 发表于 2014-9-24 15:57:16 | 显示全部楼层
怎样使用内部时钟,然后倍频到72M。。这样就能知道,是不是晶振引起,STM32运行速度变慢的了。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-9-24 23:08:39 | 显示全部楼层
回复【9楼】haohan163:
---------------------------------
通过串口定时打印数据看看
如果是时钟频率变了,那么肯定串口输出数据就乱了。
如果是其他地方耗时太久,那就不用考虑时钟的问题了,找代码bug。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

92

主题

202

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2014-3-14
在线时间
95 小时
 楼主| 发表于 2014-9-25 10:37:10 | 显示全部楼层


 这是今天试验的,负载到1A,单片机运行变慢后,向串口打印的数据。。。偶尔出现几个乱码,应该还算正常吧?这是不是说明,时钟频率仍然是72M,没有变化?
  今天还想,重新在位置给单片机供3.3V,但是串口正常打印,是不是就能说明,单片机运行正常,问题肯定出在程序上,没有必要去调试VCC供电???
回复

使用道具 举报

92

主题

202

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2014-3-14
在线时间
95 小时
 楼主| 发表于 2014-9-25 10:40:38 | 显示全部楼层
回复【11楼】正点原子:
---------------------------------
原子哥,来看看呀。。单片机变慢的时候,串口打印正常,偶尔出现几个乱码。。。是不是说明单片机工作是没有问题的,程序执行都是正常的,问题出在单片机运行之外。。。没有必要在单片机电源供电上,花费时间是吗?
回复

使用道具 举报

1

主题

93

帖子

0

精华

初级会员

Rank: 2

积分
194
金钱
194
注册时间
2014-3-12
在线时间
9 小时
发表于 2014-9-25 11:13:09 | 显示全部楼层
回复【13楼】haohan163:
---------------------------------
最有可能是程序设计的问题。
楼主驱动的是什么电机的?怎么驱动的?
功夫再高、也怕羊刀
回复

使用道具 举报

92

主题

202

帖子

0

精华

高级会员

Rank: 4

积分
637
金钱
637
注册时间
2014-3-14
在线时间
95 小时
 楼主| 发表于 2014-9-25 11:15:30 | 显示全部楼层
回复【14楼】加速度:
---------------------------------
H桥驱动。。。以后不想用H桥了,感觉很麻烦。分立器件太多了。
回复

使用道具 举报

1

主题

93

帖子

0

精华

初级会员

Rank: 2

积分
194
金钱
194
注册时间
2014-3-12
在线时间
9 小时
发表于 2014-9-25 11:39:43 | 显示全部楼层
回复【15楼】haohan163:
---------------------------------
软件是怎么驱动的?
用定时器输出PWM控制转速的吗?
功夫再高、也怕羊刀
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-9-25 22:37:37 | 显示全部楼层
回复【13楼】haohan163:
---------------------------------
说明运行频率并没有改变,问题肯定出在你某些处理上面,等待太久了,所以看起来跑的很“慢”
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-1 13:54

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表