打印
[STM32F1]

hal定时器处理步进电机出现的问题可能定时器没被清空

[复制链接]
922|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ccccccssssssss|  楼主 | 2018-3-15 08:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请指教 困扰好几天了
本来正常的程序加一个限位开关就出问题了
想当按键被按下时电机停止 并向上转两步(防止还在压着开关) 外部中断程序如下
      
                        TIM_CCxChannelCmd(STEPMOTOR_TIMx, TIM_CHANNEL_4, TIM_CCx_DISABLE);//比较输出通道关闭
MX_TIM1_Init();定时器初始化
STEPMOTOR_AxisMoveRel(200*2, 1000 , 1000 ,1000);//向前跑两步        

注释的是我预想的  结果造成:它不是跑两步而是非常卡顿慢跑
卡顿后进入主程序一切正常   ,要是不在这里加他(STEPMOTOR_AxisMoveRel(200*2, 1000 , 1000 ,1000);//向前跑两步 )   主程序中的第一步也要卡顿。也就是说必须有个引子一样东西 过了这一下就正常
是不是哪里值没被清完  hal该怎样清
是哪出问题了?另外要是把他延时5秒以上就不会出现那种状况。是不是哪还有值没清完
沙发
香水城| | 2018-3-15 14:03 | 只看该作者
根据你简要的信息,很可能是你硬件方面的问题。

使用特权

评论回复
板凳
mmuuss586| | 2018-3-15 20:24 | 只看该作者
做加减速了没有啊

使用特权

评论回复
地板
幸福小强| | 2018-3-15 21:14 | 只看该作者
步进电机控制不是很复杂吧,不知道你是怎么做的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

27

帖子

0

粉丝