3v3 ESP односторонняя связь с 5 V Arduino?
Возможно, я не совсем понимаю разницу между логическим уровнем и функцией контактов TX и RX? Мне просто интересно, может ли ESP отправлять односторонние данные на Arduino. (Я обнаружил, что для двусторонней связи потребуется преобразователь логического уровня.)
Спецификация ESP32 https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf#page=42
Похоже, что в таблицах данных Arduino не указаны допуски логического уровня. Судя по этому сообщению на форуме Arduino, это сработает.
Повсеместно ли предполагается, что 3v3 будет иметь высокий допуск к логике? https://learn.sparkfun.com/tutorials/logic-levels/all
@Adamelli, 👍1
1 ответ
Лучший ответ:
Да, это сработает, но только справедливо. Это пограничное состояние.
ESP32 выдает максимум 3,3 В в качестве высокого сигнала. Arduino принимает "выше 0.6Vcc" в качестве ВЫСОКОГО сигнала. Это означает, что он должен видеть напряжение, которое составляет не менее 60% от напряжения на выводе Vcc (5V pin) Arduino.
Если Arduino имеет ровно 5 В, то 60% из них - 3 В. Поскольку 3,3 В выше, чем 3 В, он видит, что у него ВЫСОКИЙ УРОВЕНЬ.
Однако если Arduino питается от немного более высокого напряжения, чем 5 В (некоторые USB-порты могут выдавать 5,2 В, и это все еще в спецификации), и если ESP32 питается чуть ниже 3,3 В, то погрешность 0,3 В становится все уже и уже. В конце концов он исчезает, и ВЫСОКИЙ уровень больше не может быть обнаружен.
Например, если Arduino имеет 5,2 В, а ESP32 - 3,1 В, то Arduino ожидает не менее 3,12 В, а ESP32 выдает не более 3,1 В.
Таким образом, в большинстве случаев он работает, но есть факторы, которые могут помешать ему работать. Эти факторы могут быть смягчены с помощью перевода логического уровня.
- Чтение данных из Google Таблиц с помощью Nodemcu
- Как далеко может стоять HC-SR04 от микроконтроллера?
- Код точки доступа ESP32 не компилируется
- Управление двигателем постоянного тока ARDUINO через ИК-датчик INPUT
- Сколько мА / ч в ESP8266-01 Работает в LiPo-аккумуляторе, если функция WI-FI постоянно включена
- NodeMCU ESP32 в качестве замены для проекта arduino
- Arduino и Tuya не могут получить идентификатор токена
- AT-команда не отвечает на последовательный монитор
Сам фактор 0.6 тоже выбран на всякий случай. Никто не уверяет, что 2,6 В никогда не интерпретируется как ВЫСОКОЕ. Однако ваше последнее утверждение очень правильно., @DataFiddler
@DataFiddler Небезопасно сомневаться в данных. Приведенные значения являются гарантированными значениями. Конечно, она может быть и ниже, но предполагать это небезопасно. Разные чипы из разных партий могут быть разными, но все они гарантированно будут не более 0,6Vcc. В 90% случаев это нормально, хотя и для использования Arduino штрафа обычно достаточно. Лично я обычно работаю только с микроконтроллерами 3,3 В (кто действительно использует 5 В в наши дни ?!), @Majenko
Кроме того, частично противореча моему вчерашнему мнению, 0.6 является частью четко определенной функции гистерезиса: входной вывод либо НИЗКИЙ, либо ВЫСОКИЙ: Он переключает LOW-> HIGH @ 0.6 Vcc и переключает обратно HIGH->LOW @ 0.3 Vcc На эту функцию тоже можно положиться., @DataFiddler