0% found this document useful (0 votes)
28 views3 pages

#Define MOTOR1A 2 Other File

This code defines pin assignments for motors and RF link bits. It sets the pins as inputs or outputs in setup(). The loop() function reads the RF link bit values, combines them into a byte, then uses a switch to control the motors based on the byte value - forwarding, reversing, spinning left/right or stopping based on the bit patterns.

Uploaded by

Rudy Pena
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views3 pages

#Define MOTOR1A 2 Other File

This code defines pin assignments for motors and RF link bits. It sets the pins as inputs or outputs in setup(). The loop() function reads the RF link bit values, combines them into a byte, then uses a switch to control the motors based on the byte value - forwarding, reversing, spinning left/right or stopping based on the bit patterns.

Uploaded by

Rudy Pena
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 3

#define MOTOR1A 2

#define MOTOR1B 3
#define MOTOR2A 4
#define MOTOR2B 5

//RF LINK BITS


#define bit0 9
#define bit1 10
#define bit2 11
#define bit3 12

int val0 = 0; // variable to store the read value


int val1 = 0;
int val2 = 0;
int val3 = 0;
byte valAll = 0b10000000;

void setup() {

pinMode(bit0, INPUT);
pinMode(bit1, INPUT);
pinMode(bit2, INPUT);
pinMode(bit3, INPUT);

pinMode(MOTOR1A, OUTPUT);
pinMode(MOTOR1B, OUTPUT);
pinMode(MOTOR2A, OUTPUT);
pinMode(MOTOR2B, OUTPUT);
Serial.begin(9600);

void loop() {
//Serial.println("Motor 1 ON");

val0 = digitalRead(bit0); // read the input pin


val1 = digitalRead(bit1); // read the input pin
val2 = digitalRead(bit2); // read the input pin
val3 = digitalRead(bit3); // read the input pin

//delay(300);
////forward
// digitalWrite(MOTOR1A, LOW);
// digitalWrite(MOTOR1B, HIGH);
// digitalWrite(MOTOR2A, HIGH);
// digitalWrite(MOTOR2B, LOW);
// delay(3000);
//
////backward
// digitalWrite(MOTOR1A, HIGH);
// digitalWrite(MOTOR1B, LOW);
// digitalWrite(MOTOR2A, LOW);
// digitalWrite(MOTOR2B, HIGH);
// delay(3000);
//
////spin1
// digitalWrite(MOTOR1A, HIGH);
// digitalWrite(MOTOR1B, LOW);
// digitalWrite(MOTOR2A, HIGH);
// digitalWrite(MOTOR2B, LOW);
// delay(3000);
//
////spin2
// digitalWrite(MOTOR1A, LOW);
// digitalWrite(MOTOR1B, HIGH);
// digitalWrite(MOTOR2A, LOW);
// digitalWrite(MOTOR2B, HIGH);
// delay(3000);
//
////stop 9 s
// digitalWrite(MOTOR1A, LOW);
// digitalWrite(MOTOR1B, LOW);
// digitalWrite(MOTOR2A, LOW);
// digitalWrite(MOTOR2B, LOW);
// delay(9000);

bitWrite(valAll, 0, bit0);
bitWrite(valAll, 1, bit1);
bitWrite(valAll, 2, bit2);
bitWrite(valAll, 3, bit3);

switch(valAll)
{
//stop
case(00000000):
digitalWrite(MOTOR1A, LOW);
digitalWrite(MOTOR1B, LOW);
digitalWrite(MOTOR2A, LOW);
digitalWrite(MOTOR2B, LOW);
delay(9000);
break;

case 00000001:// forward


digitalWrite(MOTOR1A, LOW);
digitalWrite(MOTOR1B, HIGH);
digitalWrite(MOTOR2A, HIGH);
digitalWrite(MOTOR2B, LOW);
delay(3000);
break;

case 00000010://backward
digitalWrite(MOTOR1A, HIGH);
digitalWrite(MOTOR1B, LOW);
digitalWrite(MOTOR2A, LOW);
digitalWrite(MOTOR2B, HIGH);
delay(3000);
break;
case 00000011://spin low
digitalWrite(MOTOR1A, HIGH);
digitalWrite(MOTOR1B, LOW);
digitalWrite(MOTOR2A, HIGH);
digitalWrite(MOTOR2B, LOW);
delay(3000);
break;

case 00000100://spin Right


digitalWrite(MOTOR1A, LOW);
digitalWrite(MOTOR1B, HIGH);
digitalWrite(MOTOR2A, LOW);
digitalWrite(MOTOR2B, HIGH);
delay(3000);
break;

default:
digitalWrite(MOTOR1A, LOW);
digitalWrite(MOTOR1B, LOW);
digitalWrite(MOTOR2A, LOW);
digitalWrite(MOTOR2B, LOW);
delay(9000);

// if (val3==LOW){
// digitalWrite(MOTOR1, HIGH); // sets the LED to the button's value
// digitalWrite(MOTOR2, HIGH);
// delay(5000);
//
// digitalWrite(MOTOR1, LOW);
// Serial.println(" Motor stopped");
// delay(3000); //3sec
// }

You might also like