Здравствуйте, помогите пожалуйста с кодом: #include <IRremote.h> int RECV_PIN = 11; int MOTOR_PIN = 1; IRrecv irrecv(RECV_PIN); decode_results results; void setup() { Serial.begin(9600); irrecv.enableIRIn(); // Запуск приемника pinMode(MOTOR_PIN, OUTPUT); } void loop() { if (irrecv.decode(&results)) { Serial.println(results.value); if (results.value == 2908251746) // При получении кодировки 1 { digitalWrite(MOTOR_PIN, HIGH); // } if (results.value == 1931099650) // кодировки 2 { digitalWrite(MOTOR_PIN, LOW); // } irrecv.resume(); // Получаем следующее значение } } мне нужно, чтобы мотор по команде пульта начинал движение, но он не двигается, где ошибка может быть? Мотор стоит на моторшилде
Смотрите, я тут набросал код: include <AFMotor.h> #include <IRremote.h> AF_DCMotor motor(1); AF_DCMotor motor2(2); int RECV_PIN = 11; int MOTOR_PIN = 2; IRrecv irrecv(RECV_PIN); decode_results results; void setup() { Serial.begin(9600); irrecv.enableIRIn(); // Запуск приемника pinMode(MOTOR_PIN, OUTPUT); } void loop() { if (irrecv.decode(&results)) { Serial.println(results.value); if (results.value == 2908251746) // При получении кодировки 1 { digitalWrite(MOTOR_PIN, HIGH); motor2.setSpeed(0); motor2.run(FORWARD); motor.setSpeed(0); motor.run(FORWARD); } else { motor.setSpeed(1000); motor.run(FORWARD); motor2.setSpeed(1000); motor2.run(FORWARD); } if (results.value == 1931099650) // кодировки 2 { digitalWrite(MOTOR_PIN, LOW); // } irrecv.resume(); // Получаем следующее значение } } Но почему то работает по кнопке на пульте только один мотор, а если вместо этих двух строк AF_DCMotor motor(1); AF_DCMotor motor2(2); , написать AF_DCMotor motor3(3); AF_DCMotor motor4(4); То работает два двигателя по кнопке на пульте. С чем это связано?