0
私たちのチームメイトと一緒に気象ステーションプロジェクトを作っています。Nodemcu 1.0 with arduino ide、コラボレーターはスケッチをコンパイルできませんが、私は可能です
このスケッチは、インストールされたライブラリ(adafruit dhtライブラリ1.3.0およびadafruit統合センサーライブラリ1.0.2)を使用しているパソコンで問題なくコンパイルされます。エラーの
チームメイトのレポートコンパイル:
\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("-----------------------------------------------");
}
これは本当に問題を修正しました。私のチームメイトは古いバージョンをインストールしていました。ありがとうございました! – taeraeyttaejae