Convertir código Morse en un patrón luminoso temporizado
Transforme código Morse escrito en una secuencia temporal lista para controlar una luz, sin calcular manualmente cada destello y cada pausa.
Ejecutar — gratis
Introduzca puntos y rayas, separe las letras con espacios, coloque una barra entre palabras y elija cuánto dura una unidad en milisegundos. El conversor devuelve en orden cada evento de encendido y apagado, junto con los totales de duración. Aplica las proporciones habituales del Morse y rechaza cualquier carácter ajeno a su notación.
Escriba el Morse con separadores claros
Introduzca cada letra codificada como un grupo continuo de puntos y rayas. Separe los grupos de letras con espacios en blanco y utilice una barra inclinada entre palabras. Por ejemplo, la señal de socorro conocida se escribe ... --- ..., mientras que dos palabras podrían verse como .... .. / - .... . .-. .. Los espacios alrededor de la barra son opcionales, ya que el conversor los normaliza en el resultado. La entrada admite deliberadamente un alfabeto estricto: solo puntos, rayas, espacios en blanco y la barra que separa palabras. No se coteja cada grupo con un diccionario de caracteres Morse asignados, pues la función consiste en temporizar el patrón de pulsos recibido, incluidas secuencias de procedimiento o personalizadas. Sin embargo, un asterisco, una letra, un dígito o un guion bajo genera un error que indica su posición. También se rechazan las palabras vacías y las barras situadas en los extremos, para evitar silencios ambiguos en la programación del dispositivo.
Comprenda cómo las unidades se convierten en milisegundos
Elija unit_ms como duración de una unidad Morse. Cada punto mantiene la luz encendida durante una unidad y cada raya durante tres. Una pausa de una unidad separa símbolos contiguos dentro de la misma letra; tres unidades separan letras y siete separan palabras. Con una unidad de 100 milisegundos, un punto dura 100 milisegundos encendido, una raya 300 y el espacio entre palabras 700 milisegundos apagado. La secuencia devuelta es cronológica y contiene registros explícitos on y off, de modo que un programa puede recorrerla sin interpretar otra vez la puntuación. No hay un registro de apagado tras el último símbolo: el resultado describe la señal, no un silencio arbitrario posterior. Las duraciones proceden de multiplicaciones enteras, y la unidad debe ser un entero entre 1 y 60,000 milisegundos. Así, todos los valores son exactos y aptos para temporizadores en milisegundos.
Use la secuencia en luces, vistas previas y pruebas
La lista de eventos sirve cuando un patrón Morse debe pasar del texto a una lógica temporal. Un programa de microcontrolador puede recorrer los registros, colocar un LED en el estado solicitado y esperar duration_ms antes de continuar. Una vista previa web puede animar una lámpara con la misma lista, y un proyecto de accesibilidad puede transformar los eventos encendidos en vibración o sonido sin alterar los intervalos. El resultado incluye además la notación Morse normalizada, el número de eventos, el tiempo encendido acumulado, el tiempo apagado y la duración completa. Estos totales permiten dimensionar una animación, comparar velocidades o verificar que otra implementación conserva el ritmo. Los temporizadores físicos pueden introducir latencia, por lo que el conversor entrega la planificación determinista ideal, no garantiza precisión material. Tampoco traduce lenguaje normal a Morse: si parte de palabras, codifíquelas primero y envíe aquí los puntos y rayas obtenidos.
Qué puede hacer con ella
Controlar un LED
Convierta un mensaje Morse guardado en esperas ordenadas de encendido y apagado que pueda ejecutar un firmware o servicio de control.
Crear una vista previa visual
Anime una lámpara, baliza o elemento de pantalla con tiempos relativos exactos antes de llevar el patrón a un dispositivo físico.
Probar código de temporización
Compare los eventos y totales generados por una aplicación con una planificación de referencia determinista.
Preguntas frecuentes
¿Cuánto cuesta?
El precio de la API es de $0.002 por elemento, y la versión del navegador puede ejecutarse localmente en esta página.
¿Qué norma temporal utiliza el conversor?
El punto ocupa una unidad; la raya, tres; la pausa interna, una; la pausa entre letras, tres; y la pausa entre palabras, siete.
¿Cómo se separan letras y palabras?
Use uno o más espacios en blanco entre letras codificadas y una barra inclinada entre palabras.
¿Convierte texto normal a código Morse?
No. Convierte una notación existente de puntos y rayas en eventos temporales; codifique antes el texto ordinario.
¿Por qué no existe una duración final de apagado?
El último símbolo termina el mensaje definido. El silencio posterior depende de la reproducción o repetición, no del patrón Morse.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/enc/morse-light-pattern \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"morse":"... --- ...","unit_ms":100}'const res = await fetch("https://api.kit.forhosting.com/enc/morse-light-pattern", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"morse": "... --- ...",
"unit_ms": 100
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/morse-light-pattern",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"morse": "... --- ...",
"unit_ms": 100
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/morse-light-pattern", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"morse":"... --- ...","unit_ms":100}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"morse":"... --- ...","unit_ms":100}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/morse-light-pattern", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"morse": "... --- ...",
"unit_ms": 100
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.morse_light_pattern",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_characters | 10000 |
max_unit_ms | 60000 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |