Arduino Polska Forum

Pełna wersja: Problem z komunikacją I2C
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Witam, 

mam problem z komunikacją I2C na płytce ESP32 DevKit V1. Otóż, chciałem podłączyć do jednej magistrali I2C kilka czujników wspierających ten standard. A mianowicie: DHT12 z biblioteką <DHT12.h>, BMP280 z biblioteką <BMP280_DEV.h> oraz moduł RTC z biblioteką <RTClib.h>. (Modułu RTC oraz BMP280 jeszcze fizycznie nie mam, ale napisałem już kod obsługujący je.) Problem polega na tym, że funkcja :

Kod:
bmp280.begin();
 powoduje nieprawidłowe działanie czujnika DHT12 - pokazuje on wartości NaN (Not a Number). Po usunięciu tej funkcji pokazywane dane są prawidłowe. Jednak oczywiście funkcja ta jest niezbędna podczas działania. Poniżej umieszczam fragment kodu: 
Kod:
void setup() {

Wire.begin(21, 22);

bmp280.begin(0x77);

  dht12.begin();

  if (! rtc.begin()) {
    Serial.println("Couldn't find RTC");
    while (1);
  }
  if (! rtc.isrunning()) {
    Serial.println("RTC is NOT running!");
  }

}

Mógłby mi ktoś wytłumaczyć jak zrobić poprawnie to połączenie? 
PS. Wolałbym nie zmieniać użytych bibliotek na inne gdyż wiązałoby się to z koniecznością zmiany sporej części programu. Mogę edytować biblioteki, jeśli to pomoże i ktoś mógłby powiedzieć mi co zmienić.

Z góry dziękuję za pomoc!

EDIT1: Linki do bibliotek:
- https://github.com/xreef/DHT12_sensor_library
- https://www.arduinolibraries.info/libraries/rt-clib
- https://github.com/MartinL1/BMP280_DEV
Podaj linki do bibliotek.
Pokaż całą konfigurację sprzętową.
(17-03-2020, 19:19)Robson Kerman napisał(a): [ -> ]Podaj linki do bibliotek.
Pokaż całą konfigurację sprzętową.
Dodałem EDIT w poście