• Датчик температуры и влажности AHT10 умер?

    @maxa2222
    AHT10 капризный к уровню сигналов.
    Была аналогичная проблема на ESP32C3. I2C делал на
    //#define I2C_MASTER_SCL_IO GPIO_NUM_10 /*!< GPIO number used for I2C master clock */
    //#define I2C_MASTER_SDA_IO GPIO_NUM_9 /*!< GPIO number used for I2C master data */
    Уровень сигнала по SDA не доходил полностью до нуля.
    Не работало пока не сделал I2C на другие выводы:
    #define I2C_MASTER_SCL_IO GPIO_NUM_6 /*!< GPIO number used for I2C master clock */
    #define I2C_MASTER_SDA_IO GPIO_NUM_5 /*!< GPIO number used for I2C master data */
    Уровни по SDA стали нормальные.
    И добавить
    vTaskDelay(pdMS_TO_TICKS(30));
    после i2c_driver_install(i2c_master_port, conf.mode, I2C_MASTER_RX_BUF_DISABLE, I2C_MASTER_TX_BUF_DISABLE, 0);
    Частоту I2C делал на 50000.

    Так работает.
    Ответ написан
    Комментировать