极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 14265|回复: 6

关于步进电机问题

[复制链接]
发表于 2015-2-26 23:07:18 | 显示全部楼层 |阅读模式

#include <IRremote.h>
int RECV_PIN = 2;
IRrecv irrecv(RECV_PIN);
decode_results results;

void setup()
{
  for(int i=8;i<12;i++)
  {
    pinMode(i,OUTPUT);
  }
  irrecv.enableIRIn(); //初始化红外遥控
}

void loop()
{
  if (irrecv.decode(&results))
  {
    if(results.value==0xFF30CF)      //确认接收到的第一排按键1的编码,此码是预先读出来的按键编码。
    {
      int a;
      a=512;
      while(a--)
       {
        for(int i=8;i<12;i++)
        {
         digitalWrite(i,1);
         delay(10);
         digitalWrite(i,0);
         }
      }
     }
    else if(results.value==0xFF18E7)   //确认接收到的第一排按键2的编码
    {
     int a;
     a=512;
     while(a--)
     {
       for(int i=12;i>=8;i--)
      {
       digitalWrite(i,1);
       delay(10);
       digitalWrite(i,0);
       }
      }
   }
   irrecv.resume(); // 接收下一个值   }
  }  
}







遥控正反转 各自都能实现 但是 当电机正转是 按下反转按钮 就无法实现
回复

使用道具 举报

发表于 2015-2-27 10:26:27 | 显示全部楼层
程序设计为:在步进电机在运行时不解码红外信号,当然在步进电机运行时就无法切换了!
如要实现不能让步时电机长时间占用程序运行时间!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-2-27 18:55:50 | 显示全部楼层
chensg 发表于 2015-2-27 10:26
程序设计为:在步进电机在运行时不解码红外信号,当然在步进电机运行时就无法切换了!
如要实现不能让 ...

要怎么才能控制步进电机占用程序的时间= =
回复 支持 反对

使用道具 举报

发表于 2015-2-28 14:56:01 | 显示全部楼层
1012958620 发表于 2015-2-27 18:55
要怎么才能控制步进电机占用程序的时间= =

比如你那个程序中的512个循环分成十几次或几十次完成,不要一次占用太长时间。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-2-28 20:24:07 | 显示全部楼层
chensg 发表于 2015-2-28 14:56
比如你那个程序中的512个循环分成十几次或几十次完成,不要一次占用太长时间。

可是 转360度是512 要是不用512 会不会转不到1圈啊= =
回复 支持 反对

使用道具 举报

发表于 2015-3-1 17:32:26 | 显示全部楼层
1012958620 发表于 2015-2-28 20:24
可是 转360度是512 要是不用512 会不会转不到1圈啊= =

我的意思是每走几步,解码一次红外信号,最后还是走完总步数,这样也不会影响转的圈数。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-3-1 21:32:37 | 显示全部楼层
chensg 发表于 2015-3-1 17:32
我的意思是每走几步,解码一次红外信号,最后还是走完总步数,这样也不会影响转的圈数。

我大概懂了= =因为其实我在走的时候...单片机没办法同时解码..只有在停了以后。。。才能开始解码...

是这个意思吗= =
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-10 14:48 , Processed in 0.039900 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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