Tabla de contenido:

Serie inalámbrica (UART) para Arduino / STM32 / etc .: 3 pasos (con imágenes)
Serie inalámbrica (UART) para Arduino / STM32 / etc .: 3 pasos (con imágenes)

Video: Serie inalámbrica (UART) para Arduino / STM32 / etc .: 3 pasos (con imágenes)

Video: Serie inalámbrica (UART) para Arduino / STM32 / etc .: 3 pasos (con imágenes)
Video: SERIE HMI #0: INTERFAZ GRAFICA DE CONTROL - ARDUINO - ESP32 - GUI 2024, Noviembre
Anonim
Serie inalámbrica (UART) para Arduino / STM32 / etc
Serie inalámbrica (UART) para Arduino / STM32 / etc
Serie inalámbrica (UART) para Arduino / STM32 / etc
Serie inalámbrica (UART) para Arduino / STM32 / etc

Con suerte, todos estarán de acuerdo conmigo en que Arduino Serial es una gran herramienta para depurar sus proyectos. Bueno, es básicamente la única opción para depurar un Arduino. Pero a veces, no es posible o práctico ejecutar un cable USB desde Arduino o cualquier otro microcontrolador en su computadora.

Así que hice esta placa UART-WiFi, basada en el ESP8266-01, que es muy barata en estos días. La placa es pequeña, puedes enchufarla a una protoboard, conectar energía, RX, TX y tierra y transmitirá todo lo que reciba de la UART a tu computadora vía WiFi y viceversa.

Características:

  • Baudrates hasta 115200 (teóricamente incluso hasta 921600, pero esto no está probado)
  • recibe / envía datos de UART y envía / recibe datos a través de WiFi directamente a su computadora usando el puerto 23 (Telnet)
  • 18 componentes, las piezas cuestan alrededor de USD 3,50
  • PCB de doble cara de 20 x 45 mm, compatible con protoboard
  • Pin RX tolerante a 5 V
  • Entrada de voltaje de 12 V a 3.3 V, consumo de corriente de aproximadamente 80 mA en promedio

He estado usando estos tableros durante aproximadamente medio año y los encontré extremadamente útiles. Incluso los prefiero a los puentes USB-UART, porque con mi placa, simplemente conecto uno de ellos a una placa de pruebas y no tengo que preocuparme por pasar cables por todo mi escritorio. Tampoco tiene ningún otro hardware, no hay puertos USB libres y estas placas brindan un aislamiento galvánico completo de su computadora, lo cual es una buena precaución de seguridad y no necesita preocuparse por los diferentes potenciales de tierra.

Paso 1: cómo funciona

Cómo funciona
Cómo funciona
Cómo funciona
Cómo funciona

Una vez que se aplica energía al módulo, comienza a intentar conectarse al WiFi predefinido. Durante esa fase, el LED amarillo parpadea. Una vez que se conecta, el LED amarillo permanece encendido. Después de eso, el módulo está esperando una conexión de un cliente Telnet (consulte el siguiente paso) y el LED verde parpadea. Una vez establecida la conexión con éxito, el terminal Telnet le muestra un mensaje que le pregunta sobre la velocidad en baudios deseada. Ingresa la velocidad en baudios en el terminal y ¡ya está! Ahora, cualquier cosa que escriba en el terminal se envía a través de WiFi y luego se emite desde el pin TX del ESP8266. Del mismo modo, cualquier cosa que aparezca en el pin RX se envía al terminal. Básicamente, no se puede diferenciar entre una consola serie y una telnet.

LEDs:

  • amarillo (más a la izquierda): estado de Wifi, parpadeando: intentando conectarse, encendido: conectado
  • verde (segundo desde la izquierda): estado de Telnet. parpadeando - esperando conexión, verde - conectado
  • azul (dos más a la derecha) - RX y TX

Paso 2: Cómo configurarlo

Cómo configurarlo
Cómo configurarlo
Cómo configurarlo
Cómo configurarlo
Cómo configurarlo
Cómo configurarlo
Cómo configurarlo
Cómo configurarlo

Conexión

La única pequeña complicación es que necesita algún tipo de identificador para cada dispositivo Telnet (similar a cada puerto serie que tiene un número). En mi proyecto usé Static IP. Normalmente, una vez que un dispositivo se conecta a WiFi, recibe automáticamente una dirección IP del servidor DHCP. Esto se denomina direccionamiento IP dinámico, pero el problema aquí es que la dirección IP puede cambiar. Así que programé la placa de tal manera que siempre reciba una dirección IP predefinida, en mi caso 192.168.2.20x, donde x es el número de placa. Esto se denomina direccionamiento IP estático. Luego, simplemente conecte una consola Telnet a 192.168.2.20x: 23 y estará listo para comenzar.

Como consola, puede usar una variedad de aplicaciones, las dos más conocidas son probablemente PuTTY o YAT (Yet Another Terminal). Utilizo este último y en la sección de imágenes puede ver cómo configurarlo, solo necesita saber la dirección IP estática mencionada anteriormente.

Firmware

El firmware está escrito en Arduino IDE y lo puedes encontrar en mi GitHub. Si desea programar su ESP8266, debe buscar en el encabezado y modificar algunas variables allí, a saber:

  • ssid: el nombre del WiFi que desea que la placa conecte
  • pass - contraseña para ese WiFi
  • ip - la IP estática que desea que tenga la placa; elija algo fuera del grupo de DHCP (o simplemente elija algo entre 200 - 250, que generalmente es gratis)
  • puerta de enlace: la IP de su enrutador
  • subred

Puede obtener los dos últimos datos de la línea de comandos, presionando Win + R, escribiendo "cmd" y luego escribiendo "ipconfig". Ver fotos.

Por supuesto, necesita el IDE de Arduino, la cadena de herramientas esp8266, etc., pero hay muchos otros tutoriales al respecto.

Tablero

También necesita fabricar la PCB. Si bien no es complicado y teóricamente podrías hacerlo en casa, te recomiendo que uses algún fabricante chino de PCB. Es barato y funciona bien. Usé ALLPCB y quedé satisfecho.

Poder

Necesitas proporcionar energía a la placa. Puede alimentarlo directamente con 3.3 V (puente JP1 en la posición de 3.3 V) o alimentar el voltaje a través de un regulador de 3.3 V (puente en la otra posición). El regulador puede aceptar voltajes de hasta 12 V. Todos los condensadores ya están integrados a bordo.

Paso 3: Conclusión

Conclusión
Conclusión

Como dije antes, estas placas me parecieron muy útiles para la creación de prototipos, no solo con un Arduino, sino con cualquier MCU en general. Y los he estado usando durante aproximadamente medio año y no tuve ningún problema con ellos.

El código fuente, los archivos Eagle y algunas imágenes se pueden encontrar en mi GitHub o en el archivo zip a continuación. Pero recomiendo GitHub, ya que podría haber una versión más nueva.

Si tiene alguna pregunta, comentario o sugerencia, no dude en dejarlos a continuación.

Recomendado: