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

Ir para baixo
lucca senn dallagassa
lucca senn dallagassa
Mensagens : 331
Data de inscrição : 09/03/2020
Idade : 17
Escola : Lindaura Ribeiro Lucas

exercicio 2.22 Empty exercicio 2.22

Qua Out 21, 2020 8:46 am
/*
* 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 vai se chamar "tecla"

//DECLARAcAO DE VARIAVEIS
byte x = 0;//Variavel tipo byte com o nome x que tem o valor de 0

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(led, OUTPUT);//Programado led como Saida
pinMode(tecla, INPUT_PULLUP);//Programado tecla como entrada pullup
}

//PROGRAMA PRINCIPAL
void loop() {
while(x < 10){//Enquanto x for menor do que 10
if(!digitalRead(tecla))break;//Se a leitura da tecla for revrtida o led acende
x++;//Incrementa a variavel x
digitalWrite(led, HIGH);//Acende led
delay(300);//Temporiza por 300 ms
digitalWrite(led, LOW);//Apaga led
delay(300);//Temporiza por 300 ms
}
x = 0;//A variavel x tem o valor de 0
delay(2000);//Temporiza por 2000 ms
}
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos