Robótica Livre
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Ir para baixo
Thiaguin
Thiaguin
Mensagens : 176
Data de inscrição : 03/03/2020

Exercício 2.22 Pisca LED 10x Empty Exercício 2.22 Pisca LED 10x

Ter Set 01, 2020 8:16 pm
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.22
* Tema: Função WHILE
* Atividade: Fazer um led piscar 10 vezes usando o while()com uma tecla para interromper
* Descrição: Montar um pisca e colocar dentro da função while controlando os loops
* Hardware: Ligar um led em um pino digital configurado como SAÍDA e uma tecla como SAíDA pullup
* Comandos: pinMode, digitalWrite, while(), break
* DICA1: A função while() será usada para fazer o pisca rodar com número controlado de ciclos
* DICA2: Usar uma variável de controle e incrementar a cada volta
* DICA3: Usar um pisca-pisca de um led dentro do while()
* DICA4: Fazer a leitura da tecla e rodar um break para interromper o pisca
*/

//DEFINICOES INICIAIS
#define led 3 //Definido que o pino 3 vai se chamar "led"
#define tecla 2 //Definido que o pino 2 irá se chamar tecla
//DECLARAcAO DE VARIAVEIS
byte x = 0;//Variável para ser atribuído o valor do número de ciclos da função while
int tempo=200;//Variável para ser atribuído o valor do tempo

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(led, OUTPUT); //programado o led como saida
pinMode(tecla,INPUT_PULLUP);//Configurado a tecla como entrada com um resistor de polarização
}

//PROGRAMA PRINCIPAL
void loop() {
while(x<=9){//O programa irá rodar enquanto o valor da variável x for menor do que 9
if(!digitalRead(tecla))break;//Se a tecla for pressionada o programa irá parar e sair fora do bloco
x++;//O valor da variável x será somado a 1 a cada ciclo
digitalWrite(led,HIGH);//O led irá acender
delay(tempo);//O intervalo de tempo terá o valor da variável tempo
digitalWrite(led,LOW);//O led irá apagar
delay(tempo);//O intervalo de tempo terá o valor da variável tempo
}
x=0;//O valor da variável x passará novamente a ser 0
delay(5000);//O intervalo de tempo terá o valor de 5 segundos
}
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5039
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

Exercício 2.22 Pisca LED 10x Empty Re: Exercício 2.22 Pisca LED 10x

Sex Set 11, 2020 11:51 pm
Muito bom , nota 10.0
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos