Подключение библиотек

Vovik15
Offline
Зарегистрирован: 10.01.2018
Здравствуйте! Изучая содержимое одной из библиотек,наткнулся на такую конструкцию
 
#if defined (RF24_LINUX) || defined (LITTLEWIRE)
  #include "utility/includes.h"
  
#elif defined SOFTSPI
  #include <DigitalIO.h>
#endif
 
Объясните пожалуйста как она работает, и что значит defined (RF24_LINUX) , и откуда берется RF24_LINUX ? 
Спасибо за ответы
Vovik15
Offline
Зарегистрирован: 10.01.2018

Ладно,спрошу по дркгому. как понять вот эту конструкцию ?

#if defined(ARDUINO) && ARDUINO >= 100
  #include "Arduino.h"
#else
  #include "WProgram.h"
#endif 

И откуда компялятор берет слово ARDUINO ?

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Vovik15 пишет:

И откуда компялятор берет слово ARDUINO ?

из загашника среды Arduino IDE. Там же он берет, кста, и константы __TIME__ и __DATE__.

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Попробуйте мной собственноручно, с нуля,  написанную тестовую пррограмму:

void setup() {
Serial.begin (9600);
Serial.print ( ARDUINO );
}
void loop() {}

Мой тест печатает 10805
А у вас?

 

Vovik15
Offline
Зарегистрирован: 10.01.2018

Да,у меня тоже 1085 печатает. Понятно что это адрес, вот  узнать бы в каком файле это все прописано. А вообще я ковыряю библиотеку радиомодуля NRF24L01  (RF24), и в ней присутствует очень много непонятного

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Какой адрес????????????????????????????

Вам не кажется что это до боли знакомое  10805
                                                                        ^  ^ ( тут поставить точки)
У вас версия ИДЕ какая?
У меня 1.8.5

Vovik15
Offline
Зарегистрирован: 10.01.2018

АА,это версия IDE :) 1.8.5 у меня