Здравствуйте. Помогите разобраться почему один скетч работает а другой нет. Загружаю Скетч №1: Два двигателя с редукторами Motor Shield L298N и ARDUINO R3 Скетч №1 работают нормально оба двигателя Однако как только я пытаюсь добавить ИК управление от пульта работает только один двигатель. Пропадает третий пин R_S = 3, а L_S = 9 есть. ЗагружаюСкетч №2 #include <IRremote.h> // ИК библиотека Работает всё монитор порта показывает считанные коды с кнопок пульта Добавляю их в скетч после чего один движок и светодиоид выполняют программу а второй молчит. Причём возвращаю скетч №1 опять работают оба движка В чём дело не могу понять.
Стандартная проблема с библиотеками, таймерами и прочим подобным, а именно конфликт, связанный с использованием одного и того же ресурса, в данном случае таймера. Что-то подобное было с библиотекой servo, которая блокировала ШИМ на пинах 9 и 10. Библиотека IRremote.h же использует таймер, который блокирует ШИМ на 3 и 11 пинах. Вариант решения - каким-либо образом перебросить третью ногу моторшилда на другой пин с поддержкой ШИМ. Обычно это делается через отгибание конфликтной ноги у шилда и перемычку сверху на контакты: конфликтной ноги и другой, на которую ее переключаем. Другой вариант - отказаться от библиотеки и сделать все самому, используя средства, не конфликтующие с ШИМ на нужной ноге.
Да, в скетче достаточно изменить номер пина в объявлении соответствующей переменной. На ардуине то, что подключалось к третьему пину нужно отключить и подключить к другому. Насчет именно десятого гарантировать не буду. Мало ли с чем оно там еще конфликтует. Надо пробовать.