質問: [前提・実現したいこと] IRremoteを実行して、赤外線の受光の動作を確認することが出来ました。 そこで受光しながらタイマーでLEDの点滅機能を付加すべくFlexiTimer2の利用をしたい。 [発生している問題・エラーメッセージ] FlexiTimer2.hをincludeしてコンパイルするだけで エラーが発生してしまいました。 インクルードを付加しただけで、それ以外のコードはまだ書いていません。 表示されたエラーメッセージ libraries\IRremote\IRremote.cpp.o (symbol from plugin): In function `MATCH(int, int)': (.text+0x0): multiple definition of`__vector_41' libraries\wimleers-flexitimer2-7338cfb\FlexiTimer2.cpp.o (symbol from plugin):(.text+0x0): first defined here collect2.exe: error: ld returned 1 exit status exit status 1 ボードArduino Leonardoに対するコンパイル時にエラーが発生しました。 [ソースコード] FlexiTimer2をダウンロードして展開した後 元々のIRremoteと言うサンプルソースに 下記一行を追加しました(コロンは除く) : #include [試したこと] エラーを見てIRremote.cppのMATCHがFlexiTimer2側と二重定義になるのかと思い 関数名を変更(MATCHqq)に変更してIRremote.hの定義も変更しましたが エラーを無くすことはできませんでした。 また`__vector_41'というのがどこ(何)を示しているのかわかりません。 修正箇所、間違い指摘いただけるとありがたいです 機能的にはMsTimer2でいいのですが、LeonardoではMsTimer2が使えないとの 記載がありましたので、Leonardoで実行出来るFlexiTimer2の利用をしたいと思っています。 FlexiTimer2のサンプルは上手く動かすことが出来てLEDの点滅させることが出来ています。 [補足情報(FW/ツールのバージョンなど)] Arduino 1.8.7 Arduino Leonardo 以上の環境で実行しています
回答: ライブラリのIRremoteはタイマ2を使っているのがわかりました