O Código Morse é um padrão de comunicação que utiliza pontos (.) e traços (-), de forma combinada,
para enviar mensagens. Cada caractere pode ser representado por uma sequência única de pontos e traços.
Veja na tabela abaixo a representação de alguns caracteres:
Esses sinais, quando convertidos em digital, são enviados na forma de ligado e desligado (1 e 0); assim, é possível enviar uma mensagem utilizando um LED controlado pelo Arduino. Um sinal curto representa um ponto e um sinal longo representa um traço.
Exemplo:
A palavra "MAKER" ficaria assim: -- .- -.- . .-.
M A K E R
Faça a montagem conforme o esquema abaixo desenhado no software Fritzing.
Obs.: observe que desta vez estamos utilizando um resistor para evitar que o LED queime.
Ligue o Arduino no PC, configure os drivers necessários e teste os códigos nas linguagens abaixo:
Scratch for Arduino:
Exemplo para piscar o Código Morse "SOS" repetidamente no Arduino.
Desafio:
- Crie funções para facilitar e deixar o código mais eficiente e elegante
- Crie funções para algumas teclas, ou seja, o LED deve piscar conforme a tecla pressionada
Arduino:
Exemplo para piscar o Código Morse "SOS" repetidamente no Arduino.
Copie e cole este código na interface do Arduino,, compile e grave na placa Arduino:
int led = 13;
void setup() {
pinMode(led, OUTPUT);
}
void loop () {
digitalWrite(led, 1);
delay(200);
digitalWrite(led, 0);
delay(200);
digitalWrite(led, 1);
delay(200);
digitalWrite(led, 0);
delay(200);
digitalWrite(led, 1);
delay(200);
digitalWrite(led, 0);
delay(200);
delay(1000);
digitalWrite(led, 1);
delay(600);
digitalWrite(led, 0);
delay(600);
digitalWrite(led, 1);
delay(600);
digitalWrite(led, 0);
delay(600);
digitalWrite(led, 1);
delay(600);
digitalWrite(led, 0);
delay(600);
delay(1000);
digitalWrite(led, 1);
delay(200);
digitalWrite(led, 0);
delay(200);
digitalWrite(led, 1);
delay(200);
digitalWrite(led, 0);
delay(200);
digitalWrite(led, 1);
delay(200);
digitalWrite(led, 0);
delay(200);
delay(3000);
}
Desafios:
- Utilize um comando de repetição (laços de repetição) para deixar o código mais enxuto.
- Crie funções para facilitar a escrita do código.
- Crie funções para determinadas letras ou palavras.