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

Ir para baixo
Ana Clara Leschnhak
Ana Clara Leschnhak
Mensagens : 117
Data de inscrição : 03/03/2023
Idade : 12
Escola : Colégio Estadual Colônia Murici

exercicio 2.16 resolvido Empty exercicio 2.16 resolvido

Qui Nov 23, 2023 11:13 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//define led e pino
#define led2 4//define led e pino
#define led3 5//define led e pino
#define ldr A0//define ldr e pino

//DECLARAcAO DE VARIAVEIS
byte luminosidade;//define a variavel

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(led1, OUTPUT);//configura a saida do led
pinMode(led2, OUTPUT);//configura a saida do led
pinMode(led3, OUTPUT);//configura a saida do led
Serial.begin(9600);//inicializa a porta serial
}
//125 530
//PROGRAMA PRINCIPAL
void loop(){
switch(map(analogRead(ldr),125, 530, 0, 3)){//conforme o ldr vai para o case
delay(100);//pequena pausa
case(0):
digitalWrite(led1, LOW);//apaga o led
digitalWrite(led2, LOW);//apaga o led
digitalWrite(led3, LOW);//apaga o led
break;//encerra o swich
case(1):
digitalWrite(led1, HIGH);//acende o led
digitalWrite(led2, LOW);//apaga o led
digitalWrite(led3, LOW);//apaga o led
break;//encerra o swith
case(2):
digitalWrite(led1, HIGH);//acende o led
digitalWrite(led2, HIGH);//acende o led
digitalWrite(led3, LOW);//apaga o led
break;//encerra o swith
case(3):
digitalWrite(led1, HIGH);//acende o led
digitalWrite(led2, HIGH);//acende o led
digitalWrite(led3, HIGH);//acende o led
break;//encerra o swith
}
}
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5798
Data de inscrição : 11/02/2019
Idade : 53
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

exercicio 2.16 resolvido Empty Re: exercicio 2.16 resolvido

Sáb Abr 20, 2024 8:53 am
Muito bom Ana, nota 10.0
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos