Всем привет, такая проблема при подключении датчика scd41 к esp32 devkit в мониторе порта Arduino ide при сканировании ложит шину i2c, т.е к i2c подключен еще датчик CCS811 если он один подключен в мониторе порта выдает адрес 0x5A, как только подключаешь SCD41 Sensirion, все сразу
Waking up SCD41...
Scanning I2C bus...
No I2C devices found
Установлена библиотека Sensirion I2C SCD4x Arduino Library
скейтч
#include<Wire.h> #include"SensirionI2CScd4x.h"// Убедитесь, что путь к файлу верный SensirionI2CScd4x scd41; voidsetup(){ Serial.begin(115200); Wire.begin(21, 22); // Указываем SDA и SCL для ESP32 Serial.println("\nI2C Scanner with SCD41 Wake-up"); scd41.begin(Wire); // Инициализируем объект scd41 } voidloop(){ Serial.println("Waking up SCD41..."); scd41.wakeUp(); delay(20); // Даём время датчику проснуться byte error, address; int nDevices = 0; Serial.println("Scanning I2C bus..."); for(address = 1; address < 127; address++){ // The i2c_scanner uses the return value of // the Write.endTransmisstion to see if // a device did acknowledge to the address. Wire.beginTransmission(address); error = Wire.endTransmission(); if(error == 0){ Serial.print("I2C device found at address 0x"); if(address < 16){ Serial.print("0"); } Serial.print(address, HEX); Serial.println(" !"); nDevices++; } elseif(error == 4){ Serial.print("Unknow error at address 0x"); if(address < 16){ Serial.print("0"); } Serial.println(address, HEX); } } if(nDevices == 0){ Serial.println("No I2C devices found\n"); }else{ Serial.println("done\n"); } delay(5000); // Задержка перед следующим сканированием }
Привет, надо осцилом посмотреть, что на шине творится.