Arduino Uno : Servo と AltSoftSerial は同時に使用できない


Arduino Uno で Servo クラスと AltSoftSerial クラスを同時に使用すると、コンパイル・エラーになります。

multiple definition of `__vector_11'

どちらのクラスも16ビットタイマーを必要としていて、そのための割込みが衝突しています。
Arduino Uno のハード仕様による制約で、回避する方法はありません。

対策として、Arduino Mega などハード仕様を満たすものを使う方法もありますが。
ひとまず、SoftSerial クラスを使って凌ぎました。

参考
AltSoftSerial and Servo libraries fails to compile


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です