0% acharam este documento útil (0 voto)
22 visualizações10 páginas

03 - Hello World

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1/ 10

3 Hello World

3.1 Introdução teórica


3.1.1 LED
Os LEDs são um tipo particular de diodo que converte energia elétrica em luz. Na
verdade, LED significa "Diodo Emissor de Luz" (do inglês, Light-Emitting Diodes). Podendo ser
encontrados em uma grande variedade de tamanhos, formas e cores, estão presentes em
dispositivos eletrônicos, na iluminação residencial e pública, entre outras aplicações. Sempre
que algo eletrônico acende, há uma boa chance de que um LED esteja atrás dele.

Seu funcionamento é bem simples: quando a corrente elétrica passa por ele, ele emite
luz. Entretanto, por ser um diodo, ele permite que a corrente passe em um único sentido.
Imagine o LED como sendo uma rua de mão única.

Normalmente ele é encontrado nos circuitos


acompanhado de um resistor. Esse resistor é responsável por
limitar a corrente que passa pelo LED, pois se ela for demais, pode
danificá-lo permanentemente.

3.1.2 Resistores
Os resistores são componentes eletrônicos que possuem uma
resistência elétrica específica e que nunca se altera. A resistência do
resistor limita o fluxo de elétrons através de um circuito. Eles são
componentes passivos, o que significa que eles só consomem energia
(e não podem gerá-la), portanto são geralmente adicionadas a
circuitos onde complementam componentes ativos, como
amplificadores operacionais, microcontroladores e outros circuitos
integrados. Comumente, os resistores são usados para limitar corrente
(como é o caso do nosso circuito do LED), divisores de tensão, ou pull-
up/pull-down em linhas de entrada e saída.

O resistor que utilizamos nesse experimento é do tipo filme de carbono e o valor de sua
resistência é representado pela cor dos anéis em seu corpo. Essas cores podem ser decodificadas
através de uma tabela.
3.1.3 Saídas digitais
Sinais digitais, também chamadas de variáveis discretas, se caracterizam por ter dois
estados diferentes, portanto também podem ser chamadas de binárias. Um exemplo de um sinal
digital é o interruptor da campainha da sua casa, porque ele tem somente dois estados, pulsado
e sem pulsar.

3.2 Blink
Vamos começar nosso aprendizado fazendo o que a maioria das pessoas fazem ao pegar
um Arduino na mão pela primeira vez: piscar um LED! Por mais simples que este experimento
possa ser, ele é fundamental para o nosso aprendizado. Ao passarmos o código deste
experimento para a placa saberemos se o driver está instalado corretamente, se a placa
escolhida é de fato a que vamos usar, além de conseguir se familiarizar melhor com a elementos
de um código Arduino estudados.

Este exemplo mostra a experiência mais simples que você pode fazer com um Arduino
para verificar uma saída física: piscar um LED. Quando você está aprendendo a programar, na
maioria das linguagens de programação, o primeiro código que você escreve diz “Hello World”
na tela do computador. Como a placa Arduino não tem uma tela substituiremos esta função
fazendo piscar um LED.

3.2.1 Blink
Como é sabido o LED acende quando existe energia passando por ele. Então o que o
Arduino faz nesse projeto é usar um de seus pinos para controlar a energia que passa pelo LED,
deixando com que ela passe por um tempo e cortando seu fluxo em seguida. Assim o LED acende
e apaga, acende e apaga, e assim por diante.

Abra o código Blink que está disponível no menu de Exemplos na IDE do Arduino. Para
acessá-lo vá em: Arquivo -> Exemplos -> 01.Basics -> Blink na sua IDE como é mostrado na
imagem abaixo.
Feito isto, o código do programa irá aparecer na tela do ambiente de desenvolvimento.
É interessante que você analise o programa para tentar compreendê-lo. Para tanto, iremos
colocar abaixo todo o código, assim como você deve estar vendo na tela da IDE, para analisá-lo
com você.

Preparado para enviar o seu primeiro programa para o Arduino? Você só precisa
primeiro garantir que seguiu os passos do capítulo Softwares & Drivers corretamente e
selecionou corretamente sua placa e a porta COM. Na parte inferior direita de sua IDE (1) você
pode visualizar rapidamente essa informação rapidamente. Se algo estiver errado, vá no menu
Ferramentas e conserte isso!Tudo certo? Então clique no botão Verificar (2) para que o seu
código seja verificado e compilado. Em seguida é só clicar no botão Carregar (3).
Se tudo correr bem você verá a mensagem "Carregado" na parte inferior esquerda da
tela (4) e o LED da sua placa irá começar a piscar com intervalos de 2 segundos.

3.2.2 Entendendo o código


Vamos entender o código! A primeira coisa que devemos nos atentar antes de começar
a programar são os comentários. Eles são "anotações" que são feitas no corpo do código para
servir de auxílio na leitura do código por outras pessoas ou até mesmo pelo próprio criador no
futuro.

Para fazer um comentário que irá se desenvolver por


mais de uma linha é só usar as notações: /* e */. O primeiro (/*)
indica onde começam os comentários e o segundo (*/) indica
onde os comentários acabam. Para comentários de única linha,
basta utilizar a notação //. Tudo o que estiver na mesma linha
e após essa notação será considerado um comentário.

Acredite, comentar o código é uma boa prática de programação e você deve praticá-la
sempre que possível. Na hora que se escreve o código tudo faz sentido, mas daqui a alguns
meses é bem possível que você não se lembre ao certo qual lógica utilizou ou o que fazem
algumas linhas. Apenas tome cuidado para não exagerar, use poucas palavras para comentar as
partes importantes.

Antes de utilizar um pino do Arduino, precisamos configurá-lo como uma entrada


(INPUT) ou uma saída (OUTPUT) através da função pinMode(). Neste caso, utilizamos
pinMode(LED_BUILTIN, OUTPUT) porque queremos definir o pino onde está conectado o LED
(LED_BUILTIN) como saída. Como existem diferentes placas Arduino, foi criada a constante
LED_BUILTIN para representar o número do pino onde o LED da placa está conectado. No caso
do Arduino/BlackBoard UNO e Mega, por exemplo, o LED está conectado fisicamente ao pino
13.

Quando usamos um pino como saída podemos comandá-lo para ser HIGH (5 V) ou LOW
(0 V) por meio da instrução digitalWrite(). Nela definimos o pino e a tensão que queremos na
saída. Quando o pino do LED é colocado em 5 V (digitalWrite(LED_BUILTIN, HIGH)) o LED acende.
Quando colocado em 0V (digitalWrite(LED_BUILTIN, LOW)) o LED apaga.
A maioria das placas Arduino trabalha com um clock de 16MHz, o que significa que ela
executa 16 milhões de operações por segundo (algumas placas podem trabalhar com um clock
mais rápido ou mais lento). A função digitalWrite() leva menos de 4 us para ser executada. Esse
tempo não é suficiente para vermos o LED piscar, então precisamos usar uma função para pausar
o fluxo de programa. E para isso utilizamos a função delay(tempo_ms). Essa função faz o
programa ficar parado durante o tempo determinado entre parênteses, neste caso 1000
milissegundos (é o mesmo que 1 segundo).

3.2.3 Fluxograma
Após aprender esses conceitos, podemos resumir o funcionamento do código como:

• Configuramos o pino 13 como saída;


• Acendemos o LED colocando 5 V no pino;
• Aguardamos 1 segundo;
• Apagamos o LED colocando 0 V no pino;
• Aguardamos 1 segundo;
• Retornamos o passo 2.

3.3 Piscando um LED fora da placa


Vamos tornar as coisas um pouco mais legais e piscar um LED um pouco maior do que o
que está na placa (Utilizar o mesmo código do Blink).

3.3.1 Lista de materiais


Você precisará dos seguintes materiais para o desenvolvimento dessa atividade:

• 1x Placa Arduino + Cabo USB


• 1x LED 5mm
• 1x Resistor 330Ω
• 1x Protoboard
• Jumpers

3.3.2 Diagrama de montagem


Desconecte a placa de seu computador e monte o circuito conforme a imagem abaixo.
Lembre-se do que falamos sobre os LEDs e resistores para conectá-los corretamente em sua
protobard.

Ao conectar o cabo USB novamente em seu computador, tanto o LED da placa como o
LED que está na protoboard devem piscar de maneira sincronizada.

3.4 Projeto Semáforo


Chegou a hora de montarmos o nosso primeiro projeto de gente grande! A ideia é usar
todos os conceitos novos para montar algo que tenha uma funcionalidade ou aplicação mais
complexa e divertida, como, por exemplo, o semáforo de LEDs que iremos montar nesse
capítulo.

Você provavelmente já ouviu alguém dizer para olhar para os dois lados da rua antes de
atravessá-la e também para respeitar o semáforo de pedestres, quando ele existir. Pois bem,
vamos construir um pequeno semáforo feito com LEDs e algumas linhas de código, e você ainda
exercita sua educação no trânsito.

3.4.1 Lista de materiais


• 1x Placa Arduino com Cabo USB
• 2x LED verde 5mm
• 1x LED amarelo 5mm
• 2x LED vermelho 5mm
• 5x Resistor 150Ω
• 1x Protoboard
• Jumpers

3.4.2 Circuito elétrico


Nessa primeira parte montaremos um semáforo simples, que poderia ser usado para,
por exemplo, controlar apenas o fluxo de veículos.
O circuito será basicamente uma extensão do que montamos no experimento Piscando
um LED. Só que dessa vez montaremos dois LEDs a mais para formar as três luzes de um
semáforo: verde, amarelo e vermelho.

3.4.3 Código Fonte


Como uma das principais ideias deste material é fazer você aprender a programar placas
Arduino, recomendamos que você sempre digite o código de cada experimento em sua Arduino
IDE daqui em diante. Isso fará com que você se acostume com a capitalização, os caracteres
especiais e com toda certeza fará você absorver melhor a lógica e implementação de cada
exemplo.
Abaixo está o código que você deve digitar e carregar em sua placa.
O que o código faz é acender apenas o LED correspondente a cada uma das fases do
sinal: siga (verde), atenção (amarelo) e pare (vermelho). Observe a tabela abaixo. Note que para
cada um dos estados o tempo de pausa é diferente, alternando em delays de 3, 2 e 5 segundos.
Claro que antes de ligar ou desligar o LED, foi realizada a configuração dos pinos onde cada um
deles está conectado como saída.

3.4.4 Melhorando o Semáforo


A ideia então é adicionar um par de LEDs, um vermelho e um verde, que indicarão para
o pedestre quando ele poderá ou não atravessar a rua (na faixa!). E isso deve obrigatoriamente
estar sincronizado com o semáforo dos carros, pois um só deve abrir quando o outro estiver
fechado. Claro que preparamos mais uma tabela para ilustrar a lógica:

Abaixo segue o circuito:


Não poderia faltar o código. Claro que você está convidado a realizar essa
implementação sem olhar no código, mas...

3.5 Indo além


Vamos exercitar um pouco? A partir dos conceitos apreendidos na aula realize a
montagem do fluxograma para o exercício 1, 2 e para o exercício 3, realize a montagem dos
circuitos e elabore um código fonte para atender o solicitado.

3.5.1 Exercício 1
A partir do código fonte apresentado neste tutorial, faça as modificações necessárias
para que o LED fique:
• 3 segundos aceso e 3 segundos apagado
• 200 milissegundos aceso e 500 milissegundos apagado

3.5.2 Exercício 2
Monte um novo circuito e faça modificações necessárias no código fonte para que o LED
seja colocado no Pino 5, e fique 2 segundos aceso e 1 segundo apagado.

3.5.3 Exercício 3
Assim como o sinal amarelo para os carros, o semáforo para pedestres normalmente
possui um sinal de alerta. Geralmente esse sinal é representado por uma luz vermelha piscando
antes que o semáforo para os carros abra. Portanto, a sua missão é fazer com que o LED
vermelho do semáforo de pedestres pisque algumas vezes antes de fechar.

Você também pode gostar