Skocz do zawartości

Błąd wgrania programu pomiaru temp DHT22 do Arduino Uno Wifi Rev2


smadelta

Pomocna odpowiedź

Dzień dobry,

W dużym skrócie niedawno zamówiłem Arduino Uno Wifi Rev2 oraz chciałem zmierzyć temperaturę oraz wilgotność w swoim pokoju czujnikiem DHT22.

Zrobiłem wszystko 1 do 1 jak tutaj na filmie https://www.youtube.com/watch?v=QaQ2nvHhpNs&t=335s , z tym że po wgraniu programu wyskakują mi poniższe błędy. 

Od 2 dni starałem się znaleźć rozwiązanie mojego problemu na różnych forach, lecz niestety nie znalazłem odpowiedzi.

Czy mógłbym kogoś prosić o jakąś małą wskazówkę w czym jest dokładnie problem oraz gdzie powinienem szukać rozwiązania?

Z góry bardzo dziękuję,

Cytat

 

Arduino:1.8.13 (Windows 10), Płytka:"Arduino Uno WiFi Rev2, None (ATMEGA4809)"

In file included from C:\Users\piotrek\Documents\Arduino\libraries\DHT-sensor-library-master\DHT.cpp:26:0:
C:\Users\piotrek\Documents\Arduino\libraries\DHT-sensor-library-master\DHT.cpp: In constructor 'DHT::DHT(uint8_t, uint8_t, uint8_t)':
C:\Users\piotrek\Documents\Arduino\libraries\DHT-sensor-library-master\DHT.h:56:46: error: 'SystemCoreClock' was not declared in this scope
 #define microsecondsToClockCycles(a) ((a) * (SystemCoreClock / 1000000L))
                                              ^
C:\Users\piotrek\Documents\Arduino\libraries\DHT-sensor-library-master\DHT.cpp:51:7: note: in expansion of macro 'microsecondsToClockCycles'
       microsecondsToClockCycles(1000); // 1 millisecond timeout for
       ^~~~~~~~~~~~~~~~~~~~~~~~~
exit status 1
Błąd kompilacji dla płytki Arduino Uno WiFi Rev2.

 

Tutaj jest mój kod :
 

#include "DHT.h"
#define DHTPIN 2    // Digital pin connected to the DHT sensor
#define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321

DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600);
  Serial.println(F("DHTxx test!"));

  dht.begin();
}

void loop() {

  delay(2000);

  
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  float f = dht.readTemperature(true);

  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println(F("Failed to read from DHT sensor!"));
    return;
  }


  float hif = dht.computeHeatIndex(f, h);
  float hic = dht.computeHeatIndex(t, h, false);

  Serial.print(F("Humidity: "));
  Serial.print(h);
  Serial.print(F("%  Temperature: "));
  Serial.print(t);
  Serial.print(F("°C "));
  Serial.print(f);
  Serial.print(F("°F  Heat index: "));
  Serial.print(hic);
  Serial.print(F("°C "));
  Serial.print(hif);
  Serial.println(F("°F"));
}

 

Link do komentarza
Share on other sites

Cześć,

spróbuj dodać taką linię na początku programu (za istni8ejącymi instrukcjami #define:

#define SystemCoreClock 16000000UL

Jeśli to nie pomoże to wklej znów kod błędu po kompilacji z dodaną tą linią powyżej.

Pozdrawiam

Link do komentarza
Share on other sites

19 minut temu, FlyingDutch napisał:

za istni8ejącymi instrukcjami #define:

Raczej przed wszystkimi innymi dyrektywami (czyli jako pierwszą linijkę kodu) - skąd biedny kompilator miałby wiedzieć kompilując DHT.h że gdzieś dalej jest zdefiniowana jakaś stała?

Link do komentarza
Share on other sites

1 godzinę temu, ethanak napisał:

Raczej przed wszystkimi innymi dyrektywami (czyli jako pierwszą linijkę kodu) - skąd biedny kompilator miałby wiedzieć kompilując DHT.h że gdzieś dalej jest zdefiniowana jakaś stała?

Hej,

oczywiście masz rację  - dzięki za poprawkę 😉

Pozdrawiam

 

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.