CoderTools

Depurador de puerto serie en línea

Herramienta de depuración serie basada en navegador - sin descarga requerida, monitoreo en tiempo real vía Web Serial API

Conexión

Estado: Desconectado

Monitor de datos

Enviar datos

Intervalo (ms):

Estadísticas

0
Bytes Enviados
0
Bytes Recibidos
00:00:00
Tiempo de Conexión
0
Velocidad de Datos (B/s)

Documentación del Depurador de Puerto Serie

Cómo usar esta herramienta

  1. Conecte su dispositivo serie a la computadora
  2. Configure los parámetros de conexión (velocidad en baudios, bits de datos, paridad, bits de parada)
  3. Haga clic en "Conectar" para establecer la conexión serie
  4. Monitoree los datos recibidos en tiempo real
  5. Envíe datos en formato texto o HEX
  6. Use el historial de envío para repetir comandos anteriores
  7. Vea las estadísticas de conexión y la velocidad de datos

Parámetros de conexión

Velocidad en baudios
Velocidad de transmisión de datos (bits por segundo)
Bits de datos
Número de bits por trama de datos (5-8)
Paridad
Método de detección de errores (Ninguna, Par, Impar)
Bits de parada
Indicadores de fin de trama (1 o 2)

Principios de implementación

Esta herramienta está implementada utilizando la API Web Serial, una interfaz de navegador moderna que permite a las aplicaciones web comunicarse directamente con dispositivos serie. A continuación se detallan los detalles de implementación principales:

API principal: Web Serial API

La herramienta está construida sobre la API Web Serial, que proporciona interfaces JavaScript para acceder a puertos serie a través del navegador.

Características principales:

  • Acceso nativo al puerto serie del navegador sin instalar controladores o complementos
  • Admite múltiples configuraciones de puerto serie (velocidad en baudios, bits de datos, paridad, bits de parada, control de flujo)
  • Comunicación de datos bidireccional usando Readable/Writable Streams
  • Operaciones asíncronas basadas en Promises y async/await

Pasos de implementación

1. Solicitar acceso al puerto serie
const port = await navigator.serial.requestPort();

Use navigator.serial.requestPort() para solicitar al usuario que seleccione un dispositivo de puerto serie. Esto requiere interacción del usuario para garantizar la seguridad.

2. Configurar y abrir el puerto
await port.open({
  baudRate: 9600,
  dataBits: 8,
  parity: 'none',
  stopBits: 1,
  flowControl: 'none'
});

Llame al método port.open() con parámetros de configuración que incluyen velocidad en baudios, bits de datos, paridad, bits de parada y control de flujo.

3. Leer datos
const reader = port.readable.getReader();
while (true) {
  const { value, done } = await reader.read();
  if (done) break;
  // Procesar datos recibidos (Uint8Array)
  const text = new TextDecoder().decode(value);
}

Obtenga un reader de port.readable y use un bucle asíncrono para leer datos continuamente. Los datos recibidos están en formato Uint8Array y deben decodificarse usando TextDecoder.

4. Enviar datos
const writer = port.writable.getWriter();
const encoder = new TextEncoder();
const data = encoder.encode('Hello Serial!');
await writer.write(data);

Obtenga un writer de port.writable, use TextEncoder para convertir cadenas a Uint8Array, luego llame a writer.write() para enviar datos.

5. Cerrar la conexión
await reader.cancel();
await reader.releaseLock();
await writer.releaseLock();
await port.close();

Antes de cerrar, libere los bloqueos del reader y writer, luego llame a port.close() para cerrar la conexión del puerto serie.

APIs clave utilizadas

  • navigator.serial.requestPort() - Solicitar al usuario que seleccione un puerto serie
  • port.open(options) - Abrir puerto serie con configuración
  • port.readable.getReader() - Obtener reader del flujo de lectura
  • port.writable.getWriter() - Obtener writer del flujo de escritura
  • reader.read() - Leer datos del puerto serie
  • writer.write(data) - Escribir datos en el puerto serie
  • TextDecoder / TextEncoder - Convertir entre cadenas y matrices de bytes
  • port.addEventListener('disconnect') - Escuchar eventos de desconexión del dispositivo

Características principales

API Web Serial

Acceso directo a puertos serie desde el navegador sin software adicional

Monitoreo en tiempo real

Monitoreo de datos en vivo con marca de tiempo y desplazamiento automático

Modo HEX

Envío y recepción de datos en formato hexadecimal con validación

Historial de envío

Seguimiento y repetición de comandos enviados anteriormente

Estadísticas

Monitoreo de tasas de transmisión de datos y tiempo de conexión

Multiidioma

Soporte para chino, inglés, japonés, francés y español

Casos de uso comunes

Desarrollo y depuración

  • Desarrollo con Arduino y ESP32
  • Depuración de sistemas embebidos
  • Desarrollo y prueba de firmware
  • Configuración de dispositivos IoT

Pruebas y comunicación

  • Pruebas de comandos AT para módems
  • Monitoreo de datos de sensores
  • Análisis de protocolos y depuración
  • Comunicación con dispositivos industriales

Soporte de navegador y requisitos

Navegadores soportados

  • Chrome 89+
  • Edge 89+
  • Firefox (no soportado)
  • Safari (no soportado)

Requisitos

  • Navegador basado en Chromium con soporte de API Web Serial
  • Conexión HTTPS (requerida para API Web Serial)
  • Permiso de usuario para acceder a puertos serie
  • Controladores de dispositivos serie compatibles instalados

Estándares y especificaciones relacionados

RS-232: RS-232: Estándar clásico de comunicación serie que define características eléctricas y especificaciones de conectores
UART: UART: Transmisor-receptor asíncrono universal, el protocolo central para comunicación serie
USB-to-Serial: USB-to-Serial: Método común de conversión serie en dispositivos modernos

Para más información: Documentación de estándares de protocolo Wikipedia RS-232, UART

Menú Rápido

Sin herramientas recientes