Почему 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-й по высшему штату .
@MD ZIAUR RAHMAN, 👍2
Обсуждение1 ответ
Здесь есть две проблемы - одна непосредственная и та, которая станет более очевидной.
Во-первых, вы, похоже, не соединили контакты заземления двух плат вместе. Это очень важно. Напряжение-это не абсолютная величина, а величина относительно какой-то другой точки в цепи. Вот почему "напряжение" иногда называют "разностью потенциалов". Обычно точка в цепи, на которую ссылаются напряжения, называется "землей". Примечание: в заземлении нет ничего особенного, это просто произвольная точка в цепи - обычно, но не всегда, точка, где напряжение самое низкое. Если заземление 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
- Почему все аналоговые выводы измеряют одно и то же значение?
- Nano: все цифровые контакты ничего не выводят
- ШИМ-сигнал с рабочим циклом 50 % и рассчитанной частотой
- Почему светодиоды влияют на аналоговый вход?
- Очень нестабильная функция AnalogRead() на Arduino Nano при питании от внешнего источника
- Могу ли я подключить аналоговый мультиплексор к Arduino Nano?
- Воспроизведение аудио с SD - Get VU, или audio waveform
- Оператор IF для запуска, даже если требование больше не выполняется
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