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.17 Sequencial randomico com switch case Empty Exercício 2.17 Sequencial randomico com switch case

Seg Ago 24, 2020 8:08 pm

/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.17
* Tema: Switch Case
* Atividade: Sequencial randomico
* Descrição: Fazer um sequencial com 6 leds em uma sequencia randomica
* Hardware: Ligar 6 leds em pinos digitais configurado como SAÍDA
* Comandos: pinMode, digitalRead, digitalWrite, Switch Case, break, random
* DICA1: Usar a função random() para gerar números entre 1 e 6, nesse caso deve ser configurado até 7
* DICA2: Fazer um switch do numero gerado pela função random()
* DICA3: No case acender o led correspondente, temporizar, apagar.
*/

//DEFINICOES INICIAIS
#define led1 3 //Definido que o pino 3 vai se chamar "led1"
#define led2 4 //Definido que o pino 4 vai se chamar "led2"
#define led3 5 //Definido que o pino 5 vai se chamar "led3"
#define led4 6 //Definido que o pino 6 vai se chamar "led4"
#define led5 7 //Definido que o pino 7 vai se chamar "led5"
#define led6 8 //Definido que o pino 8 vai se chamar "led6"

//DECLARAcAO DE VARIAVEIS
byte valor;//Variável para ser atribuído o valor da variável valor , que corresponde ao valor dos pinos dos leds
int tempo=200;//Variável para ser atribuído o valor do tempo
//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(led1, OUTPUT); //programado o led1 como saida
pinMode(led2, OUTPUT); //programado o led2 como saida
pinMode(led3, OUTPUT); //programado o led3 como saida
pinMode(led4, OUTPUT); //programado o led4 como saida
pinMode(led5, OUTPUT); //programado o led5 como saida
pinMode(led6, OUTPUT); //programado o led6 como saida
}

//PROGRAMA PRINCIPAL
void loop() {
valor=(random(1,7));//A variável valor terá o seu valor randomizado entre 1 e 7 , ou seja de acordo com as propriedades da função random , serão valores entre 1 e 6
switch(valor){//Os valores randômicos da variável valor serão tratados na função switch
case 1 ://Se o valor da variável valor for igual a 1 , irá rodar o bloco abaixo
digitalWrite(led1,HIGH);//O led1 irá acender
delay(tempo);//O valor do intervalo de tempo será o valor da variável tempo
digitalWrite(led1,LOW);//O led1 irá apagar
break;//O programa será interrompido e irá sair fora do bloco
case 2 ://Se o valor da variável valor for igual a 2 , irá rodar o bloco abaixo
digitalWrite(led2,HIGH);//O led2 irá acender
delay(tempo);//O valor do intervalo de tempo será o valor da variável tempo
digitalWrite(led2,LOW);//o led2 irá apagar
break;//O programa será interrompido e irá sair fora do bloco
case 3 ://Se o valor da variável valor for igual a 3 , irá rodar o bloco abaixo
digitalWrite(led3,HIGH);//O led3 irá acender
delay(tempo);//O valor do intervalo de tempo será o valor da variável tempo
digitalWrite(led3,LOW);//o led3 irá apagar
break;//O programa será interrompido e irá sair fora do bloco
case 4 ://Se o valor da variável valor for igual a 4 , irá rodar o bloco abaixo
digitalWrite(led4,HIGH);//O led4 irá acender
delay(tempo);//O valor do intervalo de tempo será o valor da variável tempo
digitalWrite(led4,LOW);//o led4 irá apagar
break;//O programa será interrompido e irá sair fora do bloco
case 5 ://Se o valor da variável valor for igual a 5 , irá rodar o bloco abaixo
digitalWrite(led5,HIGH);//O led5 irá acender
delay(tempo);//O valor do intervalo de tempo será o valor da variável tempo
digitalWrite(led5,LOW);//o led5 irá apagar
break;//O programa será interrompido e irá sair fora do bloco
case 6 ://Se o valor da variável valor for igual a 6 , irá rodar o bloco abaixo
digitalWrite(led6,HIGH);//O led6 irá acender
delay(tempo);//O valor do intervalo de tempo será o valor da variável tempo
digitalWrite(led6,LOW);//o led6 irá apagar
break;//O programa será interrompido e irá sair fora do bloco
}
}
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.17 Sequencial randomico com switch case Empty Re: Exercício 2.17 Sequencial randomico com switch case

Sex Set 11, 2020 11:05 pm
Parabéns Thiago, nota 10.0
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos