Флаг компилятора платформы Arduino

Есть ли какой-либо флаг компилятора для указания платформы? например:

#ifdef ARDUINO_UNO
....//code for uno
#elif ARDUINO_NANO
...//code for nano
#else
error("unknown platform");
#endif

person Mercury    schedule 06.12.2015    source источник


Ответы (1)


В файле Arduino.h вы можете найти следующие проверки препроцессора:

#if defined(__AVR_ATtiny24__) || defined(__AVR_ATtiny44__) || defined(__AVR_ATtiny84__) || defined(__AVR_ATtiny25__) || defined(__AVR_ATtiny45__) || defined(__AVR_ATtiny85__)
...
#else  
#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644__) || defined(__AVR_ATmega644A__) || defined(__AVR_ATmega644P__) || defined(__AVR_ATmega644PA__)
...
#endif

Я никогда не пробовал их, но не понимаю, почему вы не сможете использовать их и в своем коде.

person Artium    schedule 06.12.2015