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.17 Empty exercicio 2.17

Qui Out 15, 2020 10:57 am

/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.16
* Tema: Switch Case
* Atividade: Montar medidor de intensidade de luz
* Descrição: Acionar os leds conforme intensidade de luz, pouca luz tudo apagado e muita luz 3 leds acesos, 4 escalas de intensidade
* Hardware: Ligar o LDR configurados como ENTRADA ANALóGICA e 3 leds em outros pinos digitais configurado como SAÍDA
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, !(operador NOT), Switch Case, IF
* DICA1: Ajustar a escala usando o debug() para encontrar as variações máximas e minimas
* DICA2: Usar a função map() e ajustar na saida de 0 a 3
* DICA3: em cada case colocar a configuração dos leds entre os acesos e apagados
*/

//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 ldr A0 //definido que o pino A0 agora se chama LDR


//DECLARAcAO DE VARIAVEIS
int luminosidade;//Variavel para receber o valor da luminosidade

//FUNÇÕES COMPLEMENTARES


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

//PROGRAMA PRINCIPAL
void loop() {
luminosidade = map(analogRead(ldr),11,834,0,3);//A variavel luminosidade tem o valor da funçao map com a leitura do ldr com os valores minimos e maximos do ldr
switch(luminosidade){// Definido que a funçao switch vai comparar o valor da luminoidade
case (0):
digitalWrite(led1, LOW);//Definido que o led1 vai apagar
digitalWrite(led2, LOW);//Definido que o led2 vai apagar
digitalWrite(led3, LOW);//Definido que o led3 vai apagar
break;
case (1):
digitalWrite(led1, HIGH);//Definido que o led1 vai acender
digitalWrite(led2, LOW);//Definido que o led2 vai apagar
digitalWrite(led3, LOW);//Definido que o led3 vai apagar
break;
case (2):
digitalWrite(led1, HIGH);//Definido que o led1 vai acender
digitalWrite(led2, HIGH);//Definido que o led2 vai acender
digitalWrite(led3, LOW);//Definido que o led3 vai apagar
break;
case (3):
digitalWrite(led1, HIGH);//Definido que o led1 vai acender
digitalWrite(led2, HIGH);//Definido que o led2 vai acender
digitalWrite(led3, HIGH);//Definido que o led3 vai acender
break;
}
}
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos