查看: 1786|回复: 9

[未解决] 求助!L293d和红外的冲突怎么破...

[复制链接]
  • TA的每日心情
    开心
    2018-9-2 14:01
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    发表于 2017-8-23 12:21 | 显示全部楼层 |阅读模式
    本帖最后由 D.pass 于 2017-8-23 12:27 编辑

    最近一直在玩小车,红外小车的红外和电机程序我都测过,没有问题,合并起来却发现只有一边的轮子可以转,网上说是因为计时器的冲突,只要改一下IRremote库里的默认pin就可以了,但该怎么改啊?293d不是要用到11,3,5,6引脚吗,这样的话就只能用pin9和pin10了啊,可它们是一个计时器,难道改成pin9和pin10?求高手相助..................
    这是我的程序
    [kenrobot_code]
    #include <AFMotor.h>
    #include <IRremote.h>
    AF_DCMotor m1(1);AF_DCMotor m4(4);
    AF_DCMotor m3(3);AF_DCMotor m2(2);
    int I=2;
    IRrecv irrecv(I);
    decode_results results;
    void setup() {
      Serial.begin(9600);
        irrecv.enableIRIn();
        m2.run(RELEASE);
        m3.run(RELEASE);
        m1.run(RELEASE);
        m4.run(RELEASE);

    }

    void loop() {
         Serial.println(results.value, HEX);
         if (irrecv.decode(&results)){
        switch(results.value)   
    {
        case 0xD7E84B1B://前进
        m1.setSpeed(250);
        m2.setSpeed(250);
        m3.setSpeed(250);
        m4.setSpeed(250);
        m1.run(FORWARD);
        m2.run(FORWARD);
        m3.run(FORWARD);
        m4.run(FORWARD);
        break;
        case 0x97483BFB://后退
        m1.run(RELEASE);
        m2.run(RELEASE);
        m3.run(RELEASE);
        m4.run(RELEASE);
        m1.setSpeed(250);
        m2.setSpeed(250);
        m3.setSpeed(250);
        m4.setSpeed(250);
        m1.run(BACKWARD);
        m2.run(BACKWARD);
        m3.run(BACKWARD);
        m4.run(BACKWARD);
        break;
    case 0xF076C13B://左转
    m1.setSpeed(70);
    m2.setSpeed(70);
    m3.setSpeed(255);
    m4.setSpeed(255);
    m1.run(FORWARD);
    m2.run(FORWARD);
    m3.run(FORWARD);
    m4.run(FORWARD);
    irrecv.enableIRIn();
    break;
    case 0xE5CFBD7F://右转
    m1.setSpeed(250);
    m2.setSpeed(250);
    m3.setSpeed(250);
    m4.setSpeed(250);
    m1.run(FORWARD);
    m2.run(FORWARD);
    m3.run(BACKWARD);
    m4.run(BACKWARD);
    break;
    case 0xA3C8EDDB://停止
    m1.run(RELEASE);
    m2.run(RELEASE);
    m3.run(RELEASE);
    m4.run(RELEASE);
    break;
        case 0xFF02FD:///前进2
        m1.setSpeed(250);
        m2.setSpeed(250);
        m3.setSpeed(250);
        m4.setSpeed(250);
        m1.run(FORWARD);
        m2.run(FORWARD);
        m3.run(FORWARD);
        m4.run(FORWARD);
        break;
            case 0xFF9867://后退2
        m1.run(RELEASE);
        m2.run(RELEASE);
        m3.run(RELEASE);
        m4.run(RELEASE);
        m1.setSpeed(250);
        m2.setSpeed(250);
        m3.setSpeed(250);
        m4.setSpeed(250);
        m1.run(BACKWARD);
        m2.run(BACKWARD);
        m3.run(BACKWARD);
        m4.run(BACKWARD);
        break;
        case 0xFFE01F://左转2
    m1.setSpeed(250);
    m2.setSpeed(250);
    m3.setSpeed(250);
    m4.setSpeed(250);
    m1.run(BACKWARD);
    m2.run(BACKWARD);
    m3.run(FORWARD);
    m4.run(FORWARD);
    irrecv.enableIRIn();
    break;
    case 0xFF906F://右转2
    m1.setSpeed(250);
    m2.setSpeed(250);
    m3.setSpeed(250);
    m4.setSpeed(250);
    m1.run(FORWARD);
    m2.run(FORWARD);
    m3.run(BACKWARD);
    m4.run(BACKWARD);
    break;
       
    }
    irrecv.resume();
       }
    }
       
    [/kenrobot_code]

  • TA的每日心情
    开心
    2018-9-2 14:01
  • 签到天数: 10 天

    [LV.3]偶尔看看II

     楼主| 发表于 2017-8-23 21:23 来自手机 | 显示全部楼层
    outpot 发表于 2017-8-23 20:54
    换成蓝牙

    那请问红外就真的没有办法解决了吗?
  • TA的每日心情
    开心
    2018-1-27 17:23
  • 签到天数: 53 天

    [LV.5]常住居民I

    发表于 2017-8-24 11:51 | 显示全部楼层
    有,我给你条程序
  • TA的每日心情
    开心
    2018-9-2 14:01
  • 签到天数: 10 天

    [LV.3]偶尔看看II

     楼主| 发表于 2017-8-25 18:31 来自手机 | 显示全部楼层
    outpot 发表于 2017-8-24 11:51
    有,我给你条程序

    大神,请问什么程序
  • TA的每日心情
    开心
    2018-1-27 17:23
  • 签到天数: 53 天

    [LV.5]常住居民I

    发表于 2017-8-26 16:10 | 显示全部楼层
    #include <IRremote.h>



    long ir_item;



    IRrecv irrecv_7(7);

    decode_results results_7;



    void setup()

    {

      Serial.begin(9600);

      pinMode(5, OUTPUT);

      pinMode(7, OUTPUT);

      pinMode(4, OUTPUT);

      pinMode(6, OUTPUT);

      irrecv_7.enableIRIn();

    }



    void loop()

    {

      if (irrecv_7.decode(&results_7)) {

        ir_item=results_7.value;

        String type="UNKNOWN";

        String typelist[14]={"UNKNOWN", "NEC", "SONY", "RC5", "RC6", "DISH", "SHARP", "PANASONIC", "JVC", "SANYO", "MITSUBISHI", "SAMSUNG", "LG", "WHYNTER"};

        if(results_7.decode_type>=1&&results_7.decode_type<=13){

          type=typelist[results_7.decode_type];

        }

        Serial.print("IR TYPE:"+type+"  ");

        Serial.println(ir_item,HEX);

        if (ir_item == 0xFF30CF) {

          digitalWrite(5,HIGH);

          digitalWrite(7,HIGH);



        } else {

          if (ir_item == 0xFF30CF) {

            digitalWrite(4,HIGH);

            digitalWrite(6,HIGH);



          } else {

            if (ir_item == 0xFF30CF) {

              digitalWrite(4,HIGH);

              digitalWrite(7,HIGH);



            } else {

              if (ir_item == 0xFF30CF) {

                digitalWrite(5,HIGH);

                digitalWrite(6,HIGH);



              } else {

                if (ir_item == 0xFF30CF) {

                  digitalWrite(6,HIGH);



                } else {

                  if (ir_item == 0xFF30CF) {

                    digitalWrite(5,HIGH);



                  } else {

                    if (ir_item == 0xFF30CF) {

                      digitalWrite(4,HIGH);



                    } else {

                      if (ir_item == 0xFF30CF) {

                        digitalWrite(7,HIGH);



                      } else {



                      }



                    }



                  }



                }



              }



            }



          }



        }

        irrecv_7.resume();

      } else {

      }



      switch ('4') {

       case 'q':

        digitalWrite(5,HIGH);

        digitalWrite(7,HIGH);

        break;

       case 'h':

        digitalWrite(4,HIGH);

        digitalWrite(6,HIGH);

        break;

       case 'z':

        digitalWrite(4,HIGH);

        digitalWrite(7,HIGH);

        break;

       case 'y':

        break;

       case '2':

        break;

       case '3':

        break;

       case '1':

        digitalWrite(4,HIGH);

        break;

       case '4':

        break;

       default:

        break;

      }



    }
  • TA的每日心情
    开心
    2018-1-27 17:23
  • 签到天数: 53 天

    [LV.5]常住居民I

    发表于 2017-8-26 16:11 | 显示全部楼层
    一些参数需要自己改
  • TA的每日心情
    开心
    2018-9-2 14:01
  • 签到天数: 10 天

    [LV.3]偶尔看看II

     楼主| 发表于 2017-8-26 16:41 来自手机 | 显示全部楼层
    谢谢,我试试看
  • TA的每日心情
    开心
    2018-7-30 13:56
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2018-7-27 08:57 | 显示全部楼层
    大神帖子,及时收藏

    该用户从未签到

    发表于 2019-4-16 00:23 | 显示全部楼层
    请问楼主解决了吗,如果解决了能发下代码看看嘛,最近也是同样情况。。
    您需要登录后才可以回帖 登录 | 立即注册  

    本版积分规则

    热门推荐

    arduino温湿度串口监视器显示问题
    arduino温湿度串口监视器
    本人刚学arduino,遇到一些技术问题,希望大佬们帮我看一下程序,具体就是温湿度开始
    全过程展示:PWM自定义、测速、PID调速、PID自整定
    全过程展示:PWM自定义、
    有一天,电控小白在某宝上买来了一块Arduino Mega2560、一款直流电机。小白想:“这款
    关于数据同步遇到的问题
    关于数据同步遇到的问题
    首先,下载了DHT-sensor-library-master.zip 并解压到libraries文件夹中(图1) 其次
    blinker设备连接一会后自动断开
    blinker设备连接一会后自
    [mw_shl_code=arduino,true]#define BLINKER_WIFI #define BLINKER_PRINT Serial #
    学生智能打卡系统(接入blinker)
    学生智能打卡系统(接入bl
    【项目名称】学生智能打卡系统(接入blinker) 一.感谢各位大佬 首先感谢社区的管理员
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   ( 蜀ICP备14017632号-3 )
    快速回复 返回顶部 返回列表