#include <RCSwitch.
h>
// Definição dos pinos dos motores
const int motor1Forward = 3; // Pino para motor 1 (frente)
const int motor1Backward = 4; // Pino para motor 1 (atraso)
const int motor2Forward = 5; // Pino para motor 2 (frente)
const int motor2Backward = 6; // Pino para motor 2 (atraso)
RCSwitch mySwitch = RCSwitch();
void setup() {
[Link](9600);
// Configura os pinos dos motores como saída
pinMode(motor1Forward, OUTPUT);
pinMode(motor1Backward, OUTPUT);
pinMode(motor2Forward, OUTPUT);
pinMode(motor2Backward, OUTPUT);
[Link](0); // Use interrupt 0 (pino digital 2)
}
void loop() {
if ([Link]()) {
int value = [Link]();
if (value == 0) {
[Link]("Unknown encoding");
} else {
[Link]("Received Value: ");
[Link](value);
controlMotors(value);
}
[Link]();
}
}
void controlMotors(int command) {
// Comandos para o motor 1 e motor 2
switch (command) {
case 1000: // Exemplo de comando para motor 1 frente
digitalWrite(motor1Forward, HIGH);
digitalWrite(motor1Backward, LOW);
break;
case 1001: // Exemplo de comando para motor 1 trás
digitalWrite(motor1Forward, LOW);
digitalWrite(motor1Backward, HIGH);
break;
case 1010: // Exemplo de comando para motor 2 frente
digitalWrite(motor2Forward, HIGH);
digitalWrite(motor2Backward, LOW);
break;
case 1011: // Exemplo de comando para motor 2 trás
digitalWrite(motor2Forward, LOW);
digitalWrite(motor2Backward, HIGH);
break;
case 1100: // Parar motor 1
digitalWrite(motor1Forward, LOW);
digitalWrite(motor1Backward, LOW);
break;
case 1101: // Parar motor 2
digitalWrite(motor2Forward, LOW);
digitalWrite(motor2Backward, LOW);
break;
default:
[Link]("Comando não reconhecido");
break;
}
}