Você está na página 1de 17

I N T R O D U Ç Ã O À ROBÓT IC A

Leitura de
dados e
comandos
de condição
Ten Evelyn Oliveira
Leitura de dados
SERIAL READ

A função Serial.read() lê o caractere digitado

pelo usuário no monitor serial. Os caracteres são

variáveis do tipo char, cujos valores são

mapeados como números na tabela ASC.


char letra = 'a';

Tabela Cria uma variável do tipo caractere e


ASC guarda na memória o número 97, que
representa a letra 'a' minúscula.
void setup() {

Serial.begin(9600); //inicia o Serial com tx. de transmissão de 9600bps

void loop() {
Verifica se algo foi
digitado na tela
if (Serial.available() > 0) {

char letra;
Faz a leitura do que foi digitado e
int numero; guarda na variável "letra"
letra = Serial.read();

numero=letra; Guarda o mesmo valor na


Serial.print("Letra recebida: "); variável número, porém
Serial.println(letra);
número é do tipo inteiro.
Serial.print("Numero recebido: ");

Serial.println(numero);

}
void setup() {

Serial.begin(9600); //inicia o Serial com tx. de transmissão de 9600bps

void loop() {

if (Serial.available() > 0) {

char letra;

int numero;

letra = Serial.read();

numero=letra;

Serial.print("Letra recebida: ");

Serial.println(letra); Imprime as
Serial.print("Numero recebido: "); variáveis letra e
Serial.println(numero);
numero na tela
}

}
void setup() {

Serial.begin(9600); //inicia o Serial com tx. de transmissão de 9600bps

void loop() {

if (Serial.available() > 0) {

char letra;
Se for digitado 'a', o
int numero;
número impresso será 97.
Se for digitado '5', o
letra = Serial.read();
número impresso será 53.
numero=letra;

Serial.print("Letra recebida: ");

Serial.println(letra);

Serial.print("Numero recebido: ");

Serial.println(numero);

}
Como faremos a
leitura dos números
(para operações
aritméticas)?

Serial.read() Serial.parseInt() Serial.parseFloat()

Char Int Float


caractere número inteiro número real
Leitura de um número inteiro

void setup() {
Serial.begin(9600); //inicia o Serial com tx. de transmissão de 9600bps
}

void loop() {
if (Serial.available() > 0) {
int numero;
numero = Serial.parseInt();
Serial.print("Numero recebido: ");
Serial.println(numero);
}
}
COMANDO IF

O comando if executa os
comandos que estiverem dentro
a das chaves somente se a
condição for verdadeira.

V a();
condição b
if(condição){
F b();
}
c
c();
COMANDO IF
Comandos de escopo, como o IF, são separados
por chaves ao invés de ponto e vírgula. As
chaves servem para separar o escopo interno do
IF, ou seja, aquilo que será realizado se a
condição for verdadeira.

b if(condição){
comando 1;
comando 2;
comando 3;
}
a();
if(condição){
COMANDO b();
IF+ELSE }
else{ a
O comando if pode c();
opcionalmente ser }
acompanhado de uma
d(); condição
cláusula else, que V F
será executada caso
a condição seja b c
falsa.
d
COMANDO IF+ELSE
Exemplo:

int numero;
//ler o numero digitado pelo usuário
if(numero>=0){
Serial.println("O numero e positivo ou zero");
}
else{
Serial.println("O numero e negativo");
}
UTILIZANDO O TINKERCAD, MONTE UM
OBRA
CIRCUITO COM ARDUINO E FAÇA UM
PROGRAMA PARA ACENDER UM LED VERDE SE
O USUÁRIO DIGITAR UM NÚMERO PAR OU UM
LED VERMELHO SE O USUÁRIO DIGITAR UM
À

NÚMERO ÍMPAR.
CADA LED DEVE FICAR ACESO POR 1S.
MÃOS

UTILIZE O COMANDO IF-ELSE


a COMANDO
V
SWITCH+CASE
x==1 b O switch/case é um comando
F condicional que
V testa se uma variável é igual
x==2 c a uma série de valores.
F a();
V switch(x){
x==3 d case 1:b();break;
case 2:c();break;
F
case 3:d();break;
e default:e();
}
COMANDO
Observação:
SWITCH+CASE
O default é O switch/case é um comando
opcional. condicional que
testa se uma variável é igual
a uma série de valores.
a();
Observaçã
o: switch(x){
O switch+
case só case 1:b();break;
pode ser u
sado case 2:c();break;
para verifi
car case 3:d();break;
igualdade
s. default:e();
}
COMANDO
SWITCH+CASE
Exemplo com caracteres:

char letra;
//ler a letra digitada pelo usuário
switch(letra){
case 'a': Serial.println("letra a");
break;
case 'b':Serial.println("letra b");
break;
default: Serial.println("outra letra");
}
MÃOS À OBRA
Utilizando o Tinkercad, monte um circuito
com Arduino e um LED e faça um programa com
o comando switch/case para:
-se o usuário digitar 'L', o LED deve ligar
(acender) e permanecer aceso;
-se o usuário digitar 'D', O LED deve
desligar (apagar) e permanecer apagado;
-se o usuário digitar qualquer outra tecla,
deve ser exibida a mensagem ERRO no Monitor
Serial.

Você também pode gostar