Arduino ir remote truck

Status
Not open for further replies.

be80be

Well-Known Member
Figured I share code I did to control a toy dump truck.

Code is for NEC 1 remote
Code:
nt enablePin = 5;
int in1Pin = 10;
int in2Pin = 11;
int enablePin1 = 6;
int in3Pin = 8;
int in4Pin = 9;
#include "IRLibDecodeBase.h"
#include "IRLibSendBase.h"
#include "IRLib_P01_NEC.h"
#include "IRLibCombo.h"
#include "IRLibRecv.h"
#include "IRLibRecvLoop.h"
#include "IRLibRecvPCI.h"
#include "IRLibFreq.h"
IRrecv myReceiver(2);//receiver on pin 2
IRdecode myDecoder;//Decoder object

void setup()
{
  pinMode(in1Pin, OUTPUT);
  pinMode(in2Pin, OUTPUT);
  pinMode(in3Pin, OUTPUT);
  pinMode(in4Pin, OUTPUT);
  pinMode(enablePin, OUTPUT);
  pinMode(enablePin1, OUTPUT);
  myReceiver.enableIRIn(); // Start the receiver
}

void loop() {
  if (myReceiver.getResults()) {
    if(myDecoder.decode()){
    if (myDecoder.protocolNum == NEC) {
      switch (myDecoder.value) {
        case 0xFF50AF:  //up
          digitalWrite(in3Pin, LOW);
          digitalWrite(in4Pin, HIGH);
          digitalWrite(enablePin1, HIGH);
          break;
        case 0xFF7887:  //down
          digitalWrite(in3Pin, HIGH);
          digitalWrite(in4Pin, LOW);
          digitalWrite(enablePin1, HIGH);
          break;
       case 0xFFA05F:  //forward 
        digitalWrite(in1Pin,LOW);
        digitalWrite(in2Pin, HIGH);
        digitalWrite(enablePin,HIGH);
          break;
       case 0xFF40BF:  //backward
        digitalWrite(in1Pin,HIGH);
        digitalWrite(in2Pin, LOW);
        digitalWrite(enablePin,HIGH);
          break; 
        case 0xFF02FD:  //backward
        digitalWrite(enablePin1, LOW);
        digitalWrite(enablePin,LOW);
          break; 
      }
     
    }
   }
  myReceiver.enableIRIn(); //Restart the receiver
 }
}
If you want the whole thing I'll post the motor controller too. It's still in my head LOL
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…