Связь между двумя ESP32, USART против RS232 с MAX3232
У меня есть два ESP32, которые взаимодействуют через USART (TTL) на Serial2.
Вывод TX2 ESP_Alice соединен с выводом RX2 ESP_bob.
Вывод RX2 ESP_Alice соединен с выводом TX2 ESP_bob.
(слева на изображении)
Работает, но канал шумный, и мне нужно увеличить длину кабеля. Я купил две платы на базе MAX3232 и соединил их, как показано на схеме справа на изображении:
TX2 RX2 между платами ESP и MAX3232 подключены напрямую (на СТОРОНЕ TTL), контакты TX и RX двух плат (на стороне RS232) перекрещены.
Питание плат осуществляется от контакта 3,3 В и GND, подключенного к ESP_Alice
Он вообще не взаимодействует (та же программа, которая работает правильно, когда две платы соединены напрямую с TTL USART).
Что я здесь делаю не так?
@Carlo Tavian, 👍1
1 ответ
Похоже, у вас перепутана полярность питания плат RS232-TTL.
Рядом с контактами, к которым подключен GND, есть символ +
.
Это должно быть так:
- Управление потоком между устройством ESP32 и RS323
- Контакты RX и TX на esp32
- Как читать и записывать на устройство rs232 с/на Arduino
- I2C связь между Arduino Uno и Nodemcu32-s (ESP32)
- Лучшая практика буферизации для непрерывной записи на SD-карту
- Аппаратное управление последовательным потоком ESP32 и полная поддержка espressif/arduino-esp32
- Предварительное формование импедансного согласования для контактов связи UART (TX и RX)
- Двоичный в десятичный с использованием побитовых операторов