2016-11-15 9 views
0

우리 팀 동료와 함께 우리 학교에서 기상 관측소 프로젝트를 만들고 있습니다. 둘 다 Windows PC를 사용하고 있습니다. Arduino ide와 함께 Nodemcu 1.0을 프로그래밍하십시오.Nodemcu 1.0 with arduino ide, 공동 작업자가 스케치를 컴파일 할 수는 없지만 할 수 있습니다.

이 스케치는 설치된 라이브러리 (adafruit dht 라이브러리 1.3.0 및 adafruit 통합 센서 라이브러리 1.0.2)가있는 내 PC에서 문제없이 컴파일됩니다. 오류의

팀 동료 보고서 컴파일 :

\Documents\Arduino\libraries\Adafruit_Sensor-1.0.1\Adafruit_Sensor.cpp:2:26: fatal error: avr/pgmspace.h: No such file or directory 
#include <avr/pgmspace.h> 
         ^
compilation terminated. 
exit status 1 
Error compiling for board NodeMCU 1.0 (ESP-12E Module). 

우리가 비교 한 라이브러리와 모두 동일한 라이브러리가 설치되어 있어야합니다.

#include "DHT.h" 


#define DS18B20pin 4 //määritetään DS18B20 -sensorin datapin. Nodemcu pin D2 = GPIO 04 
#define DHTPIN 5 //määritetään DHT11-sensorin datapin. Nodemcu pin D1 = GPIO 05. 
#define LDRpin A0 //määritetään LDR-vastukselle A0 -pinni. 
#define DHTTYPE DHT11 //määrittää DHT-sensorisarjasta että on DHT11 käytössä. 

int DHTvalue; //DHT11 - Suhteellinen ilmankosteus prosentteina 
float DSvalue; //DS18B20 - Lämpötila celciusasteina 
int LDRvalue; //LDR  - Valon määrä prosentteina 

DHT dht(DHTPIN, DHTTYPE); 

void setup() { 
    pinMode(DS18B20pin, INPUT); 

    Serial.begin(115200); //alustetaan sarjaportti ja nopeus. 
    dht.begin();    //alustetaan dht-kirjastosta sensori. 
} 

void loop() { 
    delay(2000); //DHT11 vaatii vähintään 2 sekunnin delayn lukujen välillä. 

    //luetaan valon määrä LDR-vastukselta ja tulostetaan se sarjaportille. 

    int ldr_lukema = analogRead(LDRpin); 
    LDRvalue = ldr_lukema * (100/1023.0); //muutetaan 0-1023 arvoinen analogiarvo prosenteiksi 0-100. 

    Serial.print("Valon määrä(%): "); 
    Serial.println(LDRvalue); 



    //Tarkistetaan että DHT11 lukemat ovat ok. 
    Serial.print("Ilmankosteusanturin tila: "); 

    int dht11_tila = dht.readHumidity(); 
    if(isnan(dht11_tila)){ 
    Serial.println("virhe"); 
    }else{ 
    Serial.println("OK"); 
    } 



    Serial.print("Ilman suhteellinen kosteus(%): "); 
    Serial.println((float)dht.readHumidity()); 
    Serial.println("-----------------------------------------------"); 
} 

답변

2

팀원이 다른 버전의 Adafruit Unified Sensor Driver 라이브러리를 사용하고 있습니다. 오류 메시지에서 볼 수 있듯이 :

\Documents\Arduino\libraries\Adafruit_Sensor-1.0.1\Adafruit_Sensor.cpp:2:26: fatal error: avr/pgmspace.h: No such file or directory 

을 그들은 버전 1.0.1을 사용하고 1.0.2를 사용하고 있습니다. 불필요한 avr/pgmspace.h 포함은 두 버전 사이에 removed입니다.

+0

실제로이 문제가 해결되어 팀원이 이전 버전을 설치했습니다. 고맙습니다! – taeraeyttaejae