Уведомления
Очистить все
Всем привет, такая проблема при подключении датчика 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); // Задержка перед следующим сканированием
}
Ребят подскажите в какую сторону вообще смотреть
Создатель темы Размещено : 12.01.2025 19:57
Привет, надо осцилом посмотреть, что на шине творится.
Размещено : 13.01.2025 12:29