Встроенный светодиодный индикатор самопроизвольно загорается

Я пытаюсь подключить свой ESP32 к этому измерительному прибору CO2. Признаюсь, я ничего не знаю о соединении устройств с независимыми источниками питания друг с другом.

Я подключил ground to ground и CLK к PIN2. На всякий случай я поместил резистор между CLK и PIN2.

Я начал с 4,8 Ком сопротивления. АЦП ESP измерял 2,1 В, и это казалось прекрасным. Но когда я переключился на резистор 1К, пытаясь приблизиться к уровню "логический 1" (так я его понимаю), произошло нечто неожиданное. АЦП измерял 2,65 В, что все равно выходило за пределы 3,3 В. ЭСП должен был справляться, а встроенный светодиод загорелся, хотя ничего в моем скетче для этого не требовалось.

Хотя конфигурация работала стабильно в течение нескольких минут, пока я ее тестировал, и никакого дыма не появилось, я боюсь, что светодиодное освещение спонтанно может быть признаком электрического пробоя.

Оба устройства находятся на одном USB-концентраторе.

Вот скетч, который я использую:

#define PIN_CLOCK  2

void setup() {
  pinMode(PIN_CLOCK, INPUT);
  Serial.begin(4800);
}
    
bool last = 0;

void loop() {
  int x = analogRead(PIN_CLOCK);
  bool val = x > 1500;  
  if (last != val)
    Serial.println(x*3.3/4095);        
    last = val;    
  }

Может ли кто-нибудь объяснить, почему загорается светодиод?

Может ли кто-нибудь порекомендовать хорошую статью/видео об основных правилах подключения таких устройств?

, 👍0


1 ответ


1

Вам не нужен резистор в цепи. Просто подключите устройства друг к другу напрямую, как показано в руководстве, на которое вы ссылаетесь. Они оба являются устройствами 3,3 В и отлично работают без каких-либо дополнительных компонентов.

Считывание аналогового значения из тактового сигнала в любом случае довольно бессмысленно, так что в данный момент в ваших экспериментах действительно нет смысла. Они ничего не доказывают.

Относительно того, почему загорелся свет - это, скорее всего, связано с тем, что ESP настроен на использование этого светодиода для индикации состояния Wi-Fi или чего-то подобного. Дело в том, что в ESP32 происходит гораздо больше, чем просто в вашем коде. Ваш код-всего лишь один поток в сложной системе.

,

> Вывод часов является выходом ESP на nRF24L01. Не могли бы вы подробнее остановиться на этом? Я, вероятно, ввел вас в заблуждение, назвав его "CLK". Я имел в виду, что подключил то, что в учебнике называется ZG-C, к D2. nRF24L01 является частью другой настройки. Все еще остается вопрос: "почему встроенный светодиод"?, @Ilya I. Margolin

Ах, так вы используете раздел 3.2 учебника? По-прежнему остается в силе, что вам не нужен резистор там. Что касается внутреннего светодиода - он может управляться кодом Wi-Fi и не имеет никакого отношения к тому, что вы делаете., @Majenko

Схема была бы большой помощью и, возможно, ссылками на конкретные модули, которые вы используете, а также на технические характеристики., @Gil