Проблема со скетчем для Arduino Uno
- Войдите на сайт для отправки комментариев
Ср, 02/05/2018 - 10:19
Здравствуйте. Заливал на Ардуино программы-всё норм. Но в последней программе пишет ошибку компиляции.
Вот скетч:
//Управляем роботом с помощью ИК пульта Модель 042803. Для других пультов нужно менять коды. #include <irremote.h> // *********************** Установка выводов моторов ************************ int MotorLeftSpeed = 5; // Левый (А) мотор СКОРОСТЬ — ENA int MotorLeftForward = 4; // Левый (А) мотор ВПЕРЕД — IN1 int MotorLeftBack = 2; // Левый (А) мотор НАЗАД — IN2 int MotorRightForward = 8; // Правый (В) мотор ВПЕРЕД — IN3 int MotorRightBack = 7; // Правый (В) мотор НАЗАД — IN4 int MotorRightSpeed = 6; // Правый (В) мотор СКОРОСТЬ — ENB int duration; // ************************ Настройка ИК управления ************************ const int irReceiverPin = 12; // Инфокрасный датчик (D12) long IRfront = 0x3D9AE3F7;//код пульта для кнопки 2 — ВПЕРЕД long IRback = 0x1BC0157B;//код пульта для кнопки 8 — НАЗАД long IRturnright = 0x449E79F;//код пульта для кнопки 6 — ВПРАВО long IRturnleft = 0x8C22657B;//код пульта для кнопки 4 — ВЛЕВО long IRstop = 0x488F3CBB;//код пульта для кнопки 5 — СТОП IRrecv irrecv (irReceiverPin); // определение IRrecv для приема инфракрасных сигналов decode_results results; // результаты декодирования ИК сигналов // *********************************** SETUP ******************************** void setup () { Serial.begin (9600); //Включаем серйиный порт — скрость 9600 //****************** Настраиваем параметры выводов ARDUINO ****************** pinMode (MotorLeftForward, OUTPUT); pinMode (MotorLeftBack, OUTPUT); pinMode (MotorLeftSpeed, OUTPUT); pinMode (MotorRightForward, OUTPUT); pinMode (MotorRightBack, OUTPUT); pinMode (MotorRightSpeed, OUTPUT); irrecv.enableIRIn (); // включение ИК декодирования } // ****************** Задаем основные направления движения ****************** void forward (int a) // ВПЕРЕД { digitalWrite (MotorRightBack, LOW); digitalWrite (MotorRightForward, HIGH); analogWrite (MotorRightSpeed, 150); digitalWrite (MotorLeftBack, LOW); digitalWrite (MotorLeftForward, HIGH); analogWrite (MotorLeftSpeed, 150); delay (a * 50); } void right (int b) // ПОВОРОТ ВПРАВО (одна сторона) { digitalWrite (MotorLeftBack, LOW); digitalWrite (MotorLeftForward, HIGH); analogWrite (MotorLeftSpeed, 200); digitalWrite (MotorRightBack, LOW); digitalWrite (MotorRightForward, LOW); delay (b * 50); } void left (int c) // ПОВОРОТ ВЛЕВО (одна сторона) { digitalWrite (MotorRightBack, LOW); digitalWrite (MotorRightForward, HIGH); analogWrite (MotorRightSpeed, 200); digitalWrite (MotorLeftBack, LOW); digitalWrite (MotorLeftForward, LOW); delay (c * 50); } void turnR (int d) // РАЗВОРОТ ВПРАВО (два стороны) { digitalWrite (MotorRightBack, HIGH); digitalWrite (MotorRightForward, LOW); digitalWrite (MotorLeftBack, LOW); digitalWrite (MotorLeftForward, HIGH); delay (d * 50); } void turnL (int e) // РАЗВОРОТ ВЛЕВО (два стороны) { digitalWrite (MotorRightBack, LOW); digitalWrite (MotorRightForward, HIGH); digitalWrite (MotorLeftBack, HIGH); digitalWrite (MotorLeftForward, LOW); delay (e * 50); } void stopp (int f) // СТОП { digitalWrite (MotorRightBack, LOW); digitalWrite (MotorRightForward, LOW); digitalWrite (MotorLeftBack, LOW); digitalWrite (MotorLeftForward, LOW); delay (f * 50); } void back (int g) // НАЗАД { digitalWrite (MotorRightBack, HIGH); digitalWrite (MotorRightForward, LOW); digitalWrite (MotorLeftBack, HIGH); digitalWrite (MotorLeftForward, LOW);; delay (g * 50); } // *************************** Управление по ИК ****************************** void loop() { if (irrecv.decode (& results)) // Декодирование выполнено успешно — получены ИК сигналы { Serial.println( results.value, HEX ); // печатаем данные — может пригодится при настройке // ********************************************* if (results.value == IRfront) // ВПЕРЕД { forward (10); } // ********************************************* if (results.value == IRback) // НАЗАД { back (10); } // ********************************************* if (results.value == IRturnright) // поворот ВПРАВО { right (6); } // ********************************************* if (results.value == IRturnleft) // поворот ВЛЕВО { left (6); } // ********************************************* if (results.value == IRstop) // СТОП { stopp (1); } irrecv.resume (); // Перейти к следующим полученным ИК сигналам } }
Вот ошибка:
C:\Users\Беспарольный вход\Desktop\Робот\_______\_______.ino:3:22: fatal error: irremote.h: No such file or directory
compilation terminated.
exit status 1
Ошибка компиляции для платы Arduino/Genuino Uno.
Раньше читал, вроде нету такой библиотеки. Что делать?
Фраза " irremote.h: No such file or directory " не наводит ни на какие мысли?
А сами-то как думаете? Что делать, когда "нету такой библиотеки"?
А сами-то как думаете? Что делать, когда "нету такой библиотеки"?
Чего тут думать, если все очевидно: нужно спросить на форуме.
А не подскажете, где её можно скачать?
Я просто в этом деле совсем чайник
https://www.arduinolibraries.info/libraries/i-rremote
https://www.arduinolibraries.info/libraries/i-rremote
Ну кто так помогает? Вот так надо - скачать
А дальше то что? Перенёс в папку со скетчем распакованную папку и тоже самое...
https://lesson.iarduino.ru/page/Installing_libraries/
Спасибо, получилось