gustavo ex2.16
3 participantes
- gustavo
- Mensagens : 72
Data de inscrição : 18/03/2023
Escola : lindaura
gustavo ex2.16
Qua Out 18, 2023 1:58 pm
/*
* 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
//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
Serial.begin(9600);
}
//PROGRAMA PRINCIPAL
void loop() {
switch(map(analogRead(ldr),11,834,0,3)){
case(0):
digitalWrite(led1, LOW); //led apaga
digitalWrite(led2, LOW); //led apaga
digitalWrite(led3, LOW); //led apaga
break;
case(1):
digitalWrite(led1, HIGH);//led acende
digitalWrite(led2, LOW); //led apaga
digitalWrite(led3, LOW); //led apaga
break;
case(2):
digitalWrite(led1, HIGH); //led acende
digitalWrite(led2, HIGH); //led acende
digitalWrite(led3, LOW); //led apaga
break;
case(3):
digitalWrite(led1, HIGH); //led acende
digitalWrite(led2, HIGH); //led acende
digitalWrite(led3, HIGH); //led acende
break;
}
}
* 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
//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
Serial.begin(9600);
}
//PROGRAMA PRINCIPAL
void loop() {
switch(map(analogRead(ldr),11,834,0,3)){
case(0):
digitalWrite(led1, LOW); //led apaga
digitalWrite(led2, LOW); //led apaga
digitalWrite(led3, LOW); //led apaga
break;
case(1):
digitalWrite(led1, HIGH);//led acende
digitalWrite(led2, LOW); //led apaga
digitalWrite(led3, LOW); //led apaga
break;
case(2):
digitalWrite(led1, HIGH); //led acende
digitalWrite(led2, HIGH); //led acende
digitalWrite(led3, LOW); //led apaga
break;
case(3):
digitalWrite(led1, HIGH); //led acende
digitalWrite(led2, HIGH); //led acende
digitalWrite(led3, HIGH); //led acende
break;
}
}
- Monica Moreno
- Mensagens : 744
Data de inscrição : 03/03/2020
Idade : 15
Escola : Colegio Lindaura Ribeiro Lucas
Re: gustavo ex2.16
Qua Out 18, 2023 8:17 pm
Bom Dia Gustavo
Tudo Bem?
Erros / Revisões / Perguntas
1° Revise seu programa
Nota 50.0
Aguardo Terminar
Tudo Bem?
Erros / Revisões / Perguntas
1° Revise seu programa
Nota 50.0
Aguardo Terminar
Re: gustavo ex2.16
Dom Dez 03, 2023 4:23 pm
Oi pessoal, fiz a revisão e o programa está correto, funcionou direitinho.
Daí não sei se fez a calibração do sensor conforme a placa.
O principal comando que é o switch não está comentado, daí da impressão que não entendeu o que está acontecendo no programa.
Dai pela falta do comentário vou manter a nota da Monica, na verdade os comentários existentes são o obvio, o principal não tem.
Daí não sei se fez a calibração do sensor conforme a placa.
O principal comando que é o switch não está comentado, daí da impressão que não entendeu o que está acontecendo no programa.
Dai pela falta do comentário vou manter a nota da Monica, na verdade os comentários existentes são o obvio, o principal não tem.
Permissões neste sub-fórum
Não podes responder a tópicos