ошибка при совместном использовании tone и IRremote

Тема в разделе "Arduino & Shields", создана пользователем Станислав, 15 авг 2012.

  1. Приветствую участников!
    Есть идея собрать портотип некоего уст-ва. Это - мой первый опыт сделать что либо вообще, ранее я не работал с этими удивительными игрушками.

    Уперся вот во что: при совместном использовнии библиотеки IRremote.h (shirriff / Arduino-IRremote) и функции tone, скетч не компилируется и не прошивается в ардуино.

    Выводит следующую ошибку:
    Код (Text):
    core.a(Tone.cpp.o): In function `__vector_13':
    /Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/cores/arduino/Tone.cpp:523: multiple definition of `__vector_13'
    IRemote/IRremote.cpp.o:/Applications/Arduino.app/Contents/Resources/Java/libraries/IRemote/IRremote.cpp:311: first defined here
    /Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/bin/../lib/gcc/avr/4.3.2/../../../../avr/bin/ld: Disabling relaxation: it will not work with multiple definitions
    если убрать из скетча tone или наоборот оставить только его - все окей.
     
  2. nailxx

    nailxx Официальный Нерд Администратор

    IRRemoteInt.h, line 27:

    У вас как раз тот самый случай: прерывание на 2-м таймере уже используется библиотекой Tone. Просто выберите любой другой в упомянутом файле.
     
    Pi-Tone нравится это.
  3. спасибо, нашел.
     
  4. Antonm

    Antonm Нуб

    И у меня ошибка, а по отдельности все работает. Что делать?
     
  5. Sergun

    Sergun Нуб

    См. решение по ссылке