3

カスタム ライブラリを作成していますが、Arduino Uno で正しく動作しています。しかし、Arduino Due を手に入れたので、ボード固有のピン定数を定義する必要があります。

#ifdefほとんどのボードでは、 で定義された IO 定数を使用してディレクティブを介してこれを行うことができます\\arduino-1.5.2\hardware\tools\avr\avr\include\avr\io.h。例えば:

#if defined (__AVR_ATmega128__)
    //do something specific
#endif

Due に使用する正しい定数を知っている人はいますか?

4

2 に答える 2

5

動作します_SAM3XA_が、他の多くの Atmel ARM チップ (SAM3X8C、SAM3X8H など) が含まれています。

もっと正確なものは

#if defined (__arm__) && defined (__SAM3X8E__) // Arduino Due compatible
// your Arduino Due compatible code here
#endif

(詳細については、ファイルsam3.hを参照してください。)

Arduino Due (互換性のあるボードを除く) のみをターゲットにしたい場合は、次を使用できます。

#if defined (_VARIANT_ARDUINO_DUE_X_)
// your Arduino Due code here
#endif

(これは Arduino Due のvariant.hファイルで定義されています。)

于 2014-01-11T05:43:39.607 に答える
3

私は通常使用します...

#ifndef __AVR__
// something special just for non AVR8's
// ...
#endif

どこで使用できると思いますか...

#ifdef _SAM3XA_
// something special just for Due's SAM3XA
// ...
#endif
于 2013-07-18T13:38:51.587 に答える