Converter código Morse em padrão de luz temporizado
Transforme código Morse escrito em uma sequência de tempo pronta para acionar uma luz, sem calcular manualmente cada clarão e pausa.
Executar grátis
Informe pontos e traços, separe as letras com espaços, coloque uma barra entre palavras e escolha a duração de uma unidade em milissegundos. O conversor devolve cada evento de ligar e desligar na ordem, além dos totais de duração. Ele segue as proporções conhecidas do Morse e rejeita caracteres que não pertencem à notação aceita.
Escreva o Morse com separadores claros
Informe cada letra codificada como um grupo contínuo de pontos e traços. Coloque espaços entre os grupos de letras e use uma barra entre palavras. Por exemplo, o conhecido sinal de socorro é escrito como ... --- ..., enquanto duas palavras podem aparecer como .... .. / - .... . .-. .. Os espaços ao redor da barra são opcionais, pois o conversor os normaliza no resultado. A entrada aceita deliberadamente um alfabeto rigoroso: somente pontos, traços, espaços em branco e a barra separadora de palavras. Cada grupo não é comparado com um dicionário de caracteres Morse atribuídos, porque o objetivo é cronometrar o padrão de pulsos fornecido, inclusive sequências operacionais ou personalizadas. Porém, um asterisco, letra, algarismo ou sublinhado gera um erro com a posição encontrada. Palavras vazias e barras nas extremidades também são recusadas, evitando que um silêncio ambíguo entre na programação do dispositivo.
Entenda a conversão das unidades em milissegundos
Escolha unit_ms como a duração de uma unidade Morse. Cada ponto mantém a luz ligada por uma unidade, e cada traço por três. Uma pausa de uma unidade separa símbolos vizinhos dentro da mesma letra; três unidades separam letras e sete separam palavras. Com uma unidade de 100 milissegundos, um ponto fica ligado por 100 milissegundos, um traço por 300 e o intervalo de palavra fica desligado por 700 milissegundos. A sequência devolvida é cronológica e usa registros explícitos on e off, permitindo que um programa percorra tudo sem interpretar a pontuação novamente. Não existe registro desligado depois do símbolo final: a saída descreve o sinal, e não um silêncio arbitrário após o término. As durações usam multiplicação de inteiros, e a unidade deve ser um número inteiro de 1 a 60,000 milissegundos. Assim, todos os tempos permanecem exatos para temporizadores em milissegundos.
Use a sequência em luzes, prévias e testes
A lista de eventos é útil sempre que um padrão Morse precisa passar de texto para lógica de tempo. Um programa de microcontrolador pode percorrer os registros, ajustar um LED ao estado solicitado e aguardar duration_ms antes de avançar. Uma prévia no navegador pode animar uma lâmpada com a mesma lista, enquanto um projeto de acessibilidade pode transformar os eventos ligados em vibração ou áudio sem alterar os intervalos. O resultado também informa a notação Morse normalizada, a quantidade de eventos, o tempo ligado acumulado, o tempo desligado e a duração completa. Esses totais ajudam você a dimensionar uma animação, comparar velocidades de transmissão ou verificar se outra implementação preservou o ritmo. Temporizadores físicos e do sistema operacional podem introduzir latência; por isso, o conversor fornece a programação determinística ideal, sem prometer precisão física. Ele também não converte linguagem comum em Morse. Se você começar com palavras, codifique-as primeiro e envie os pontos e traços resultantes.
Casos de uso
Acionar um controlador de LED
Converta uma mensagem Morse armazenada em esperas ordenadas de ligar e desligar que um firmware ou serviço de controle possa executar.
Criar uma prévia visual
Anime uma lâmpada, baliza ou elemento da tela com tempos relativos exatos antes de aplicar o padrão a um dispositivo físico.
Testar código de temporização
Compare os eventos e totais gerados por um aplicativo com uma programação de referência determinística.
Perguntas frequentes
Quanto custa?
O preço da API é US$ 0,002 por item, e a versão do navegador pode ser executada localmente nesta página.
Qual padrão de tempo o conversor utiliza?
O ponto vale uma unidade; o traço, três; a pausa interna, uma; a pausa entre letras, três; e a pausa entre palavras, sete.
Como devo separar letras e palavras?
Use um ou mais espaços em branco entre letras codificadas e uma barra entre palavras.
Ele converte texto comum em código Morse?
Não. Ele transforma uma notação existente de pontos e traços em eventos de tempo; codifique primeiro o texto comum.
Por que não há uma duração final desligada?
O último símbolo encerra a mensagem definida. O silêncio seguinte pertence à política de reprodução ou repetição, não ao padrão Morse.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
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)Exemplo de requisição
{
"morse": "... --- ...",
"unit_ms": 100
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.morse_light_pattern",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_characters | 10000 |
max_unit_ms | 60000 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |