Estoy tratando de entender cómo conectar los pines UART de un ESP32 a los pines I2C de mi raspberry pi 3B+. Veo varios chips puente disponibles para esto, como la hoja de datos MSP430 de TI . Pero no soy muy experto en circuitos, así que estoy pasando por un momento difícil. Los pines que necesito usar en el ESP32 son: GPIO 9 y 10, RX y TX respectivamente (UART1). En Raspberry Pi: GPIO 2 y 3, SDA y SCL respectivamente. ¿Alguien sabe las respuestas a las siguientes preguntas?
Además de conectar los pines RPi, ESP, Vcc, GND al puente en las posiciones correctas de E/S en el chip, ¿qué circuitos adicionales se necesitarían para lograr una buena comunicación?
¿Cómo se vería el código ESP32 (IDE de Arduino)?
¿Cómo se vería el código de Pi (python)?
simular este circuito : esquema creado con CircuitLab
El ESP32 tiene más de 1 UART. Aunque es común usar solo uno de ellos en la configuración por defecto, el ESP32 tiene 3 UARTs. Puede configurar qué pines GPIO usar usando la función uart_set_pin(). Debe consultar la hoja de datos o el sitio web de Espressif para obtener más detalles.
El uso de múltiples UART permite que el ESP actúe como un puente serie. Esta función se implementa con frecuencia con los diferentes tipos de ESP como puente serie WiFi, pero también funciona para conexiones por cable.
Otros han comentado que la forma más fácil de comunicarse entre el ESP32 y el RPi es mediante una serie asíncrona; Si no tiene un puerto serie de repuesto en el Pi, puede agregar un adaptador de USB a serie.
Si elige uno con un chip FTDI, simplemente conéctelo al Pi y obtendrá otro puerto serie; el otro tipo común de adaptador usa el chip CP2102, y creo que esto podría requerir que instale un controlador en el Pi, pero encontrará muchas instrucciones sobre cómo hacerlo en la Web, por ejemplo, esta página
Asegúrese de estar usando un adaptador con el nivel de voltaje correcto (señales lógicas de 3,3 V, no voltajes de 5 V o RS232), luego conecte los cables de tierra juntos y Tx en Pi a Rx en ESP32, Rx en Pi a Tx en ESP32.
Con respecto a cómo usas este enlace para comunicarte, cualquier carácter que envíes en un lado solo aparecerá en el otro. Sin embargo, es prudente crear un formato de comunicación simple, como una carta de comando, quizás algunos valores numéricos, luego un Retorno de carro para señalar el final de la línea de comando. Esto tiene 2 beneficios; significa que puede usar un terminal serial para ingresar comandos manualmente, y también evita la posible confusión en la que el destinatario intenta realizar una acción cuando solo ha recibido parte de un comando.
FMP
Feynman137
lior bilia
Feynman137
FMP
Feynman137
hijo sim