Arduino - Programa 02: Sinal de S.O.S
Eletrônica

Arduino - Programa 02: Sinal de S.O.S


Bom pessoal dando continuidade aos tutoriais de arduino trago dessa vez um programa de sinal de código morse. Para quem não sabe o código morse é um sistema de representação de letras, números e sinais de pontuação através de um sinal codificado enviado intermitentemente.
O código morse foi desenvolvido por Samuel Morse e segundo o Wikipédia criador do famoso telégrafo. Uma mensagem codificada em morse pode ser transmitida de várias maneiras, como por exemplo: efeitos sonoros, pulsos elétricos, sinais visuais (luzes). Essas são uma das formas de se transmitir um código morse. Enfim não ficarei de lero lero sobre o código morse, mas quem nunca viu um filme de ação em que um soldado fazia comunicação com sua base por códigos luminosos ? Para quem quiser aprofundar no estudo do código morse pode ver no Wikipédia um artigo sobre ele. Mas vamos ao que nos interessa, o código é esse.


// Codigo LED SOS
// Led conectado ao pino 10
int ledpin = 10;
// Executa uma vez quando o sketch inicia
void setup(){
// define o pino como saída
  pinMode(ledPin, OUTPUT);
}
// executa repetidas vezes
void loop(){
// 3 pontos
  for(int x = 0; x<3; x++){
    digitalWrite(ledPin, HIGH); //acende o LED
    delay(150); // espera 150 ms
    digitalWrite(ledPin, LOW); //apaga o LED
    delay(100); // espera 100ms
}
// espera 100ms para marcar o intervalo entre as letras
delay(100);
// 3 traços
  for(int x=0; x<3; x++){
    digitalWrite(ledPin, HIGH); // acende o LED
    delay(400); // espera 400ms
    digitalWrite(ledPin, LOW); // apaga o LED
    delay(100); // espera 100ms
}
// espera 100ms para marcar o intervalo entre as letras
delay(100);
// 3 pontos novamente
  for(int x=0; x<3; x++){
    digitalWrite(ledPin, HIGH); // acende o LED
    delay(150); // espera 150ms




Então vamos analisar o código acima, primeiro começamos declarando o LED como inteiro e conectado na porta digital 10. Em seguida no void setup() (executado somente uma vez) indicamos a porta 10 como sendo uma saída. Ao entrar na parte do loop (void loop) é que começa o bang bang !, vamos lá, para formar os três primeiros pontos do sinal de S.O.S foi utilizado o seguinte: for(int x = 0; x<3; x++). O comando " for " cria um laço de repetição por contador, ou seja, tudo que está dentro das chaves será executado ' n ' vezes, no exemplo acima executado 3 vezes. O laço for é muito utilizado e é um comando bem interessante, em uma linguagem mais informal ele quer dizer que para x igual a zero, x é menor do que 3 ?, se sim incremente x e execute o que está entre chaves, se não passe para o próximo comando. Enquanto a variável de controle for menor do que a condição estabelecida o comando continuará a executar comandos entre as chaves e a incrementar a variável. 

É interessante destacar que ao se utilizar esses comandos deve-se tomar o cuidado de não causar o famoso " loop infinito ". Agora a análise do código ficou mais simples, em sequência é informado que a saída pino 10 recebe nível alto e permanece acionada por 150ms, e transcorrido este tempo, permanece em nível baixo por 100ms. Daí o código é praticamente o mesmo em todo o loop, diferenciando-se em termos do tempo de acionamento da saída, para que tenhamos os pontos e os traços utilizados nos códigos Morse. Entretanto o objetivo deste exemplo é salientar o comando " for ". Dessa vez a análise do código foi bem rápida pois, todos os comandos com exceção do for já foi explicado no tutorial anterior. 
A ideia é compreender o funcionamento dos comandos e como eles podem ser aplicados em outros problemas.

Então vamos ver o funcionamento do código de hoje, para isso será preciso os seguintes componentes:

  1. Uma placa Arduino.
  2. 1 LED 5 ou 10mm (a cor que desejar).
  3. 1 resistor de 100 Ohm (estou utilizando de 150 Ohm).
  4. 1 proto-board ou faça uma montagem do tipo ' aranha '.
  5. E claro um computador com o IDE para gravar o código no arduino.
Imagem dos componentes para testar o código:

Figura 1 - Componentes utilizados.
No meu caso utilizei dois resistores de 300 Ohm em paralelo para conseguir 150 Ohm o que é suficiente para o LED.

A figura abaixo apresenta o esquema de ligação do LED ao arduino.


Figura 2 - Esquema de ligação do LED

E como não podia faltar, o vídeo, está ai o funcionamento do código de hoje.


Por hoje é isso, espero que tenham gostado, dúvidas deixe seu comentário e não se esqueça de se inscrever no nosso canal do YouTube. Os programas também pode ser baixados por aqui. Até o próximo tutorial !



loading...

- Arduino - Programa 07: Interrupção (parte 2)
Prosseguindo o tutorial 7 vou apresentar o segundo modo de interrupção. Este modo permite que ao interrompermos o programa e acionarmos o botão novamente, o hardware inicie de onde parou, ou seja, é realizado uma pausa no programa. Para este programa...

- Arduino - Programa 06: Efeito Sequencial Variável Com Led
Olá pessoal, vamos dar continuidade aos tutoriais de arduino, desta vez trago o código do efeito sequencial com LED, porém há uma característica muito interessante nesse código. Este código é o mesmo do programa anterior, só que agora podemos...

- Arduino - Programa 05: Efeito Sequencial Com Led
Olá, vamos ao quinto tutorial de arduino, desta vez trago o código de um efeito sequencial com LED, a ideia em si é simples, acender sequencialmente dez LED's, mas no entanto o código apresenta uma maneira simples e eficiente de acender os...

- Arduino - Programa 04: Semáforo Interativo Com Led
Continuando os tutoriais de arduino, dessa vez trago o código aprimorado do semáforo anterior. A peculiaridade deste código está no fato do usuário poder interagir com o arduino. Mas, o que estamos a aprender de verdade, é como fazer a leitura de...

- Arduino - Programa 01: Acendendo Um Led
Bom pessoal como prometido estarei iniciando hoje o primeiro tutorial de arduino, o primeiro programa me pareceu bem simples, acendendo um LED.Entretanto apesar de ser um programa bem pequeno ele não pode ser deixado de lado. Acho melhor mostrar o programa...



Eletrônica








.