Você está na página 1de 18

ESTRUTURAS DE PROGRAMAO

DO ARDUINO

\\ EBOOK: Estruturas de Programao do Arduino

Parabns

Ol Meu nome Hamilton Sena e antes de


mais nada eu quero te dar parabns!
Parabns pelo seu interesse em aprender de
verdade sobre as diversas caractersticas da
programao do Arduino, neste caso, as
estruturas de programao.
Saber as estruturas de programao a
habilidade nmero 1 que todo desenvolvedor
de algoritmos deve se especializar.

Mas o que Estruturas de Programao?


Chamadas tambm de estruturas de controle
(ou fluxo de controle) esse tema refere-se
ordem em que instrues, expresses e
chamadas de funo so executadas ou
avaliadas em um programa e/ou firmware.

ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

Boa leitura!
/hamiltonsenanet

\\ MAPA: Arduino e as reas do conhecimento que o tornam um especialista

Insira seus
dados.

Sobre o Autor

Hamilton Sena

ENG Hamilton Sena| devidaasuaideia.com.br |

Especializado em sistemas embarcados


Scio e Diretor de Engenharia da
MOBHIS Automao Urbana Ltda
Engenheiro de Controle e Automao
Mestrando em Educao de cincias e
Matemtica
Professor de Controle Industrial e
Eletricidade do SENAI-PR
Tcnico em processamento de dados
E claro, um declarado
EMPREENDEDOR TECNOLGICO

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

NDICE

ENG Hamilton Sena| devidaasuaideia.com.br |

Divida o seu
contedo em
captulos e
numere as
pginas dessa
maneira

Estruturas Condicionais

Estruturas de Repetio

Estrutura Completa

14

Recomendaes

15

Contato

16

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

IF

Estrutura em
Fluxograma

(SE)

IF em ingls significa SE. O mais utilizado


comando condicional da linguagem do Arduino.
Como o nome j sugere, este comando define uma
estrutura condicional para operaes que sero
realizadas perante uma determinada condio. Em
outras palavras, este comando AVALIA uma
condio, e se ela for verdadeira, executa uma
instruo
ou
sequncia
de
instrues.
Exemplo no Arduino

Sintaxe
if (condio){
... linha ou bloco de instrues se
a condio for 1 (verdadeira) ...
}

ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

IF-ELSE

Estrutura em
Fluxograma

(se - seno)

Adicionando-se o comando ELSE (que do ingls


significa (SENO) junto ao IF, possvel se incluir
uma instruo ou lista de instrues que sero
executadas no caso da condio ser negada.

Exemplo do Arduino

Sintaxe
if (condio){
... linha ou bloco de instrues se
a condio for 1 (verdadeira) ...
}else{
... linha ou bloco de instrues se
a condio for 0 (falsa) ...

}
ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

IF-ELSE

NEGADO

Estrutura em
Fluxograma

Esta estrutura funciona de forma idntica a


anterior com a diferena na condio de teste,
onde a condio verdade a inversa. Isso quer
dizer, que se a condio for 0 est ser a
verdadeira. Atente-se pelo fato do uso do sinal de
(! exclamao) para definir esse mtodo.

Exemplo no Arduino

Sintaxe
if (!(condio)){
... linha ou bloco de instrues se
a condio for 1 (verdadeira) ...

}else{
... linha ou bloco de instrues se
a condio for 0 (falsa) ...

}
ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

Switch-case (escolha-caso)

Estrutura em
Fluxograma

Switch em ingls significa ESCOLHA. Assim como o


if - else, o switch um comando de deciso. Este
recurso pode facilmente substituir uma cadeia
de ifs encadeados (aninhados), o que resulta em
um cdigo mais limpo e de fcil entendimento. O
switch prprio para se testar uma nica varivel
inteira em relao a diversos valores.

Sintaxe

ENG Hamilton Sena| devidaasuaideia.com.br |

Exemplo no Arduino

switch (varivel){
case constante_1: linhas de programa ... ;
break;
case constante_2: linhas de programa ...;
break;
case constante_n: linhas de programa ... ;
break;
default: linhas de programa ...;

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

WHILE

Estrutura em
Fluxograma

(enquanto)

WHILE significa enquanto, e implica em uma


condio temporal, algo que deve ser repetido at
que uma determinada situao no seja mais
satisfeita.

Sintaxe
Exemplo no Arduino

while (condio){
... linha ou bloco de instrues a
repetir ...
}

ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

DO-WHILE(faa-enquanto)

Estrutura em
Fluxograma

WHILE significa enquanto. DO significa


faa. Portanto, do-while significa FAA
ENQUANTO. muito parecido com o WHILE, mas
seu efeito diferente. O WHILE um tipo de
estrutura de repetio cujo teste feito no incio
do lao. J o DO WHILE possui o teste no final do
lao, o que permite que o lao sofra pelo menos
uma execuo, antes de avaliar se deve ser
repetido
ou
no.

Sintaxe
Exemplo no Arduino

do{
linha ou bloco de instrues a
repetir ...
}while(condio);

ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

WHILE - INFINITO

Estrutura em
Fluxograma

Significa que todas as instrues contidas entre as


chaves (bloco de instrues) sero repetidas at que
a condio que est entre os parnteses do while
seja falsa. Como o nmero 1 a representao
binria de verdadeiro, ento este lao no ir
terminar nunca. Ou melhor... ir terminar sim...
caso o sistema seja desligado, ou ainda caso seja
encontrada uma instruo que interrompa o while.
Dentro da funo loop(), existe uma condio
while(1), por isso que o seu firmware fica
executando infinitamente.

Exemplo no Arduino

Sintaxe

while (1){
... linha ou bloco de instrues a
repetir ...
}

ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

WHILE

- vazio

Estrutura em
Fluxograma

Outra maneira de uso do while possibilitar que


a execuo fique parada ou executando em
vazio apenas testando uma condio, sem haver
instrues ou blocos para execuo.
OBS: Nesse caso no h a utilizao das { }(chaves).

Sintaxe

ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

/hamiltonsenanet

Exemplo no Arduino

while (condio);

\\ EBOOK: Estruturas de Programao do Arduino

FOR

Estrutura em
Fluxograma

(para)

Exemplo no Arduino

For significa PARA (preposio). uma estrutura


de repetio bastante prtica, e voltada para
realizar contagens ou iteraes de um lao
relacionadas a uma varivel de controle. Observe
que entre os parnteses deste comando, so
inseridos 3 itens : a expresso geralmente
utilizada
para
inicializar
uma
varivel,
determinando qual o seu valor inicial. A segunda
expresso a condio para ocorrer a repetio.
Quando esta condio for falsa, o for ir terminar.
A terceira expresso geralmente utilizada para
realizar um incremento ou decremento na varivel
de controle, ou seja, a varivel utilizada para
determinar quantas interaes o lao deve
executar.

Sintaxe

for ( expresso_inicial;
condio_para_repetio;
expresso_auxiliar){
linha ou bloco de instrues a repetir...

}
ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

COMPLETO

Estrutura em
Fluxograma

Exemplo no Arduino

Programa completo em linguagem Arduino.


Algumas observaes:
1. Todos os cdigos utilizados no Arduino
necessita de no mnimo as duas funes
principais, a setup() e a loop().
2. Lembre tambm que uma linha de
instrues sempre terminada por um ponto
e vrgula (;), e um bloco de instrues
delimitado por chaves ({ ... })
3. Para interromper qualquer estrutura de
repetio deve ser executada a instruo
break. J a instruo continue promove
um reinicio do lao, ignorando o restante das
instrues compreendidas no bloco definido
pela estrutura de repetio.

ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

RECOMENDAO
de outros materiais

Software utilizado para fazer os fluxograma


YED
http://goo.gl/7kKVxn

Software de simulao para o Arduino


123DCircuits
http://goo.gl/bPLlzX

Quer realmente se
especializar em
automao com
Arduino?
Conhea o curso mais
completo de Arduino,
j produzido no Brasil
online.
Quero saber mais...

ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

Desenvolver muito mais que copiar,

Entenda Porque...
Desenvolver projetos de automao com ARDUINO um
desafio enorme. Conhecer todo o processo que envolve o
desenvolvimento destes projetos crtico para ter sucesso e no
desistir.
Apesar de encontrarmos muitos modelos de projetos com
ARDUINO prontos na internet, geralmente fornecidos pelos diversos
fabricantes do ARDUINO, quase sempre estes projetos so
genricos e no contempla a sua necessidade especfica. Para que
voc faa as mudanas de acordo com a necessidade de seu
projeto, necessrio saber toda a estrutura que envolve um
desenvolvimento de produtos embarcados, ou seja, eletrnica,
eletricidade e programao.
Nosso projeto de vida a sua ideia tem como objetivo
levar contedo relevante para voc se especializar cada dia mais
nesta maravilhosa plataforma de desenvolvimento.
Ento, o que est esperando? Acesse a nossa pagina e se
inscreva no nosso curso de ARDUINO que vai te ensinar os pilares
do desenvolvimento da plataforma ARDUINO e vai te levar para
outro nvel de desenvolvimento.

ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

COMPARTILHE

SIGA A GENTE
/hamiltonsenanet

/hamiltonsenanet

CONTATO
hamilton@devidaasuaideia.com.br
http://devidaasuaideia.com.br
ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

/hamiltonsenanet

\\ EBOOK: Estruturas de Programao do Arduino

Estruturas de

Programao do
ARDUINO
ENG Hamilton Sena| devidaasuaideia.com.br |

/hamiltonsenanet

/hamiltonsenanet