Arduino 1.0 IDE に付属しているハードウェア シリアル ライブラリを移植しようとしています。ATMega2560 プロセッサでコンパイルし、単純な「Hello World」の例で Arduino USART ライブラリ「HardwareSerial」をテストしていますが、この奇妙なエラーが残っています。
それは私に次のことを教えてくれます: attempt[ing] to use poisoned "SIG_USART0_RECV"
... 私はこれまでそのようなエラーについて聞いたことがありません。私はそれが何に定義されているかを見つけようとしましたが、Eclipseは私にこれを与えました:
#define SIG_USART0_RECV _VECTOR(25)
で見つかりましたiomxx0_1.h
。
そこからviaに_VECTOR(n)
リダイレクトされます。しかし、それらはシステムパスにあり、現在のArduinoライブラリがまだそれらを使用しているため、それらはまだ有効であると思います.__vector_25
#define _VECTOR(N) __vector_ ## N
なぜ彼らは自分の定義を毒するのでしょうか? プロジェクトをコンパイルする前に何か他のことを宣言する必要がありますか?
編集:
iomxx0_1.h
私は次のように述べて毒を見つけました: #pragma GCC poison SIG_USART0_RECV
. では、なぜ彼らはこれを毒殺するのでしょうか?