Почему analogRead показывает значение (395), когда он находится в ВЫСОКОМ состоянии ? почему не показывает 1023, когда его высокое состояние

Я взял выход от ESP8266 и подключил его к аналоговому входу Arduino Nano A0

я использую приложение BLYNK для включения/выключения D0 pin в ESP8266 , и я подключил ESP8266 D0 pin с Arduino Nano A0 analogPin.

когда esp8266 D0 находится в высоком состоянии , значение analogRead в arduino nano serial monitor показывает значение 395.

почему бы не 1023-й по высшему штату .

, 👍2

Обсуждение

esp8266 имеет уровень TTL 3,3 В. аналоговый вывод ATmega считывает 1023 при 5 В., и если вы быстро переключите вывод, то даже 3,3 В не будет считано., @Juraj

Вы соединили контакты заземления вместе?, @Majenko

@Majenko нет , я не подключал заземляющий вывод esp8266 к заземляющему выводу Arduino nano, должен ли я?, @MD ZIAUR RAHMAN

Абсолютно - иначе как nano может знать, что 3,3 В от ESP8266 относительно...?, @Majenko

@Juraj, пожалуйста , будьте конкретны, это поможет мне учиться ., @MD ZIAUR RAHMAN

таблицы данных являются конкретными., @Juraj


1 ответ


2

Здесь есть две проблемы - одна непосредственная и та, которая станет более очевидной.

Во-первых, вы, похоже, не соединили контакты заземления двух плат вместе. Это очень важно. Напряжение-это не абсолютная величина, а величина относительно какой-то другой точки в цепи. Вот почему "напряжение" иногда называют "разностью потенциалов". Обычно точка в цепи, на которую ссылаются напряжения, называется "землей". Примечание: в заземлении нет ничего особенного, это просто произвольная точка в цепи - обычно, но не всегда, точка, где напряжение самое низкое. Если заземление Arduino, которое он использует для сравнения входящих напряжений, не совпадает с заземлением, которое ESP8266 использует для создания своего выходного напряжения по отношению к нему, то Arduino действительно не может знать, что это за напряжение.

Вы можете думать о нем как о человеке, стоящем на земле. Сейчас мой рост около 6 футов. Когда я встаю, моя макушка находится примерно в 6 футах над землей. Но для того, кто стоит на ближайшем возвышении в земле, моя голова находится всего в 3 футах над землей. Их земля не такая, как моя.

Вторая проблема, которая станет очевидной после подключения заземления, заключается в том, что Arduino измеряет напряжение от 0 до 5 В как значения от 0 до 1023. Однако ESP8266 работает не на 5 В, а на 3,3 В. Самое высокое напряжение, которое он когда-либо может потушить, - 3,3 В. Arduino никогда не сможет прочитать это как 1023, потому что это не 5V. Вместо этого он будет читать где-то около 675. То есть 3,3 В-это две трети от 5 В, а 675-две трети от 1023.

,

да, теперь я понял., большое спасибо . ты-дженис., @MD ZIAUR RAHMAN