exercicio 2.07
2 participantes
- gabriel hoepers
- Mensagens : 160
Data de inscrição : 02/07/2022
Idade : 13
Escola : lindaura
exercicio 2.07
Qui Dez 08, 2022 11:23 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.7
* Tema: Função IF / ELSE / IF
* Atividade: Termometro de Leds
* Descrição: Utilizar 3 leds para informar a temperatura, se abaixo de 30 graus verde, se maior que 30 e menor que 50 amarelo e se maior que 50 vermelho
* Hardware: Ligar os LED em pinos digital configurados como SAÍDA e o NTC em uma entrada analógica
* Comandos: pinMode, analogRead, IF ELSE IF, digitalWrite
* Dica1: o conversor analógico possui 10 bits ou seja até 1024
* Dica2:Usar o debug() para verificar os valores do NTC para cada temperatura e aplicar nas comparações do IF/ELSE/IF
* Dica3:A função IF/ELSE/IF após encontrar uma condição verdadeira, não executa as demais comparações
* Dica4:Montar a função IF/ELSE/IF de forma que a condição anterior não atenda a próxima
*/
//DEFINICOES INICIAIS
#define ledVerde 2
#define ledAmarelo 3
#define ledVermelho 4
#define ntc A0
//DECLARAcAO DE VARIAVEIS GLOBAIS
int estado;
//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);
pinMode(ledVerde, OUTPUT);
pinMode(ledAmarelo, OUTPUT); //
pinMode(ledVermelho, OUTPUT); //ledVermelho definido como saida
}
//FUNÇÕES COMPLEMENTARES
void debug (){
Serial.println(analogRead(ntc));
delay(200);
}
//1 - 476 ; 2 - 642 ; 3 -
//PROGRAMA PRINCIPAL
void loop() {
debug();
estado = analogRead(ntc);
if (estado < 497){
digitalWrite(ledVerde, HIGH);
digitalWrite(ledAmarelo, LOW);
digitalWrite(ledVermelho, LOW);
}
else if (estado > 548){
digitalWrite(ledVermelho, LOW);
digitalWrite(ledAmarelo, HIGH);
digitalWrite(ledVerde, LOW);
} else {
digitalWrite(ledVermelho, LOW);
digitalWrite(ledAmarelo, LOW);
digitalWrite(ledVerde, HIGH);
}
}
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.7
* Tema: Função IF / ELSE / IF
* Atividade: Termometro de Leds
* Descrição: Utilizar 3 leds para informar a temperatura, se abaixo de 30 graus verde, se maior que 30 e menor que 50 amarelo e se maior que 50 vermelho
* Hardware: Ligar os LED em pinos digital configurados como SAÍDA e o NTC em uma entrada analógica
* Comandos: pinMode, analogRead, IF ELSE IF, digitalWrite
* Dica1: o conversor analógico possui 10 bits ou seja até 1024
* Dica2:Usar o debug() para verificar os valores do NTC para cada temperatura e aplicar nas comparações do IF/ELSE/IF
* Dica3:A função IF/ELSE/IF após encontrar uma condição verdadeira, não executa as demais comparações
* Dica4:Montar a função IF/ELSE/IF de forma que a condição anterior não atenda a próxima
*/
//DEFINICOES INICIAIS
#define ledVerde 2
#define ledAmarelo 3
#define ledVermelho 4
#define ntc A0
//DECLARAcAO DE VARIAVEIS GLOBAIS
int estado;
//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);
pinMode(ledVerde, OUTPUT);
pinMode(ledAmarelo, OUTPUT); //
pinMode(ledVermelho, OUTPUT); //ledVermelho definido como saida
}
//FUNÇÕES COMPLEMENTARES
void debug (){
Serial.println(analogRead(ntc));
delay(200);
}
//1 - 476 ; 2 - 642 ; 3 -
//PROGRAMA PRINCIPAL
void loop() {
debug();
estado = analogRead(ntc);
if (estado < 497){
digitalWrite(ledVerde, HIGH);
digitalWrite(ledAmarelo, LOW);
digitalWrite(ledVermelho, LOW);
}
else if (estado > 548){
digitalWrite(ledVermelho, LOW);
digitalWrite(ledAmarelo, HIGH);
digitalWrite(ledVerde, LOW);
} else {
digitalWrite(ledVermelho, LOW);
digitalWrite(ledAmarelo, LOW);
digitalWrite(ledVerde, HIGH);
}
}
- gabriel hoepers
- Mensagens : 160
Data de inscrição : 02/07/2022
Idade : 13
Escola : lindaura
exercicio 2.7 resolvido
Qui Mar 09, 2023 9:30 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.7
* Tema: Função IF / ELSE / IF
* Atividade: Termometro de Leds
* Descrição: Utilizar 3 leds para informar a temperatura, se abaixo de 30 graus verde, se maior que 30 e menor que 50 amarelo e se maior que 50 vermelho
* Hardware: Ligar os LED em pinos digital configurados como SAÍDA e o NTC em uma entrada analógica
* Comandos: pinMode, analogRead, IF ELSE IF, digitalWrite
* Dica1: o conversor analógico possui 10 bits ou seja até 1024
* Dica2:Usar o debug() para verificar os valores do NTC para cada temperatura e aplicar nas comparações do IF/ELSE/IF
* Dica3:A função IF/ELSE/IF após encontrar uma condição verdadeira, não executa as demais comparações
* Dica4:Montar a função IF/ELSE/IF de forma que a condição anterior não atenda a próxima
*/
//DEFINICOES INICIAIS
#define ledVerde 2 //definido que o "ledVerde" será configurado mo pino 2
#define ledAmarelo 3 //definido que o "ledAmarelo" será configurado mo pino 3
#define ledVermelho 4 //definido que o "ledVermelho" será configurado mo pino 4
#define ntc A0 //definido que o "ntc" será configurado mo pino A0
//DECLARAcAO DE VARIAVEIS GLOBAIS
int estado;
//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);
pinMode(ledVerde, OUTPUT); //ledverde definido como saída
pinMode(ledAmarelo, OUTPUT); //ledAmarelo definido como saída
pinMode(ledVermelho, OUTPUT); //ledVermelho definido como saida
}
//FUNÇÕES COMPLEMENTARES
void debug (){
Serial.println(analogRead(ntc)); //abre a porta serial, e coloca o ntc programado na porta serial
delay(200); //tempo de 200 ms
}
//PROGRAMA PRINCIPAL
void loop() {
debug();
estado = analogRead(ntc); //pega o valor do ntc e passa para o estado
if (estado < 476){ // se a temperatura for menor que 476
digitalWrite(ledVerde, HIGH); //led verde aceso
digitalWrite(ledAmarelo, LOW); //led amarelo apagado
digitalWrite(ledVermelho, LOW); //led vermelho apagado
}
else if (estado <= 642){ //se a temperarutura for menor, ou igual que 642
digitalWrite(ledVermelho, LOW); //led vermelho apagado
digitalWrite(ledAmarelo, HIGH); //led amarelo aceso
digitalWrite(ledVerde, LOW); //led verde desligado
} else {
digitalWrite(ledVermelho, LOW); //led vermelho apagado
digitalWrite(ledAmarelo, LOW); //led amarelo apagado
digitalWrite(ledVerde, HIGH); //led verde aceso
}
}
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.7
* Tema: Função IF / ELSE / IF
* Atividade: Termometro de Leds
* Descrição: Utilizar 3 leds para informar a temperatura, se abaixo de 30 graus verde, se maior que 30 e menor que 50 amarelo e se maior que 50 vermelho
* Hardware: Ligar os LED em pinos digital configurados como SAÍDA e o NTC em uma entrada analógica
* Comandos: pinMode, analogRead, IF ELSE IF, digitalWrite
* Dica1: o conversor analógico possui 10 bits ou seja até 1024
* Dica2:Usar o debug() para verificar os valores do NTC para cada temperatura e aplicar nas comparações do IF/ELSE/IF
* Dica3:A função IF/ELSE/IF após encontrar uma condição verdadeira, não executa as demais comparações
* Dica4:Montar a função IF/ELSE/IF de forma que a condição anterior não atenda a próxima
*/
//DEFINICOES INICIAIS
#define ledVerde 2 //definido que o "ledVerde" será configurado mo pino 2
#define ledAmarelo 3 //definido que o "ledAmarelo" será configurado mo pino 3
#define ledVermelho 4 //definido que o "ledVermelho" será configurado mo pino 4
#define ntc A0 //definido que o "ntc" será configurado mo pino A0
//DECLARAcAO DE VARIAVEIS GLOBAIS
int estado;
//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);
pinMode(ledVerde, OUTPUT); //ledverde definido como saída
pinMode(ledAmarelo, OUTPUT); //ledAmarelo definido como saída
pinMode(ledVermelho, OUTPUT); //ledVermelho definido como saida
}
//FUNÇÕES COMPLEMENTARES
void debug (){
Serial.println(analogRead(ntc)); //abre a porta serial, e coloca o ntc programado na porta serial
delay(200); //tempo de 200 ms
}
//PROGRAMA PRINCIPAL
void loop() {
debug();
estado = analogRead(ntc); //pega o valor do ntc e passa para o estado
if (estado < 476){ // se a temperatura for menor que 476
digitalWrite(ledVerde, HIGH); //led verde aceso
digitalWrite(ledAmarelo, LOW); //led amarelo apagado
digitalWrite(ledVermelho, LOW); //led vermelho apagado
}
else if (estado <= 642){ //se a temperarutura for menor, ou igual que 642
digitalWrite(ledVermelho, LOW); //led vermelho apagado
digitalWrite(ledAmarelo, HIGH); //led amarelo aceso
digitalWrite(ledVerde, LOW); //led verde desligado
} else {
digitalWrite(ledVermelho, LOW); //led vermelho apagado
digitalWrite(ledAmarelo, LOW); //led amarelo apagado
digitalWrite(ledVerde, HIGH); //led verde aceso
}
}
Re: exercicio 2.07
Sex Mar 17, 2023 10:47 pm
Oi Gabriel, o programa está com a logica correta porém tem um erro de semantica, ou seja, tem algo não fazendo sentido.
Se for testar vai ver que um dos leds não é afetado, isso porque as combinações das lógicas estão montadas de forma que não permite a combinação.
Faça que revise a lógica, tente fazer ser rever o a videoaula, faça o estudo do comportamente e encontre a melhor combinação que atenda ao enunciado.
Essa é a melhor forma de aprender, aproveite.
Nota 6.0
Se for testar vai ver que um dos leds não é afetado, isso porque as combinações das lógicas estão montadas de forma que não permite a combinação.
Faça que revise a lógica, tente fazer ser rever o a videoaula, faça o estudo do comportamente e encontre a melhor combinação que atenda ao enunciado.
Essa é a melhor forma de aprender, aproveite.
Nota 6.0
- gabriel hoepers
- Mensagens : 160
Data de inscrição : 02/07/2022
Idade : 13
Escola : lindaura
exercicio 2.7
Ter maio 30, 2023 9:15 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.7
* Tema: Função IF / ELSE / IF
* Atividade: Termometro de Leds
* Descrição: Utilizar 3 leds para informar a temperatura, se abaixo de 30 graus verde, se maior que 30 e menor que 50 amarelo e se maior que 50 vermelho
* Hardware: Ligar os LED em pinos digital configurados como SAÍDA e o NTC em uma entrada analógica
* Comandos: pinMode, analogRead, IF ELSE IF, digitalWrite
* Dica1: o conversor analógico possui 10 bits ou seja até 1024
* Dica2:Usar o debug() para verificar os valores do NTC para cada temperatura e aplicar nas comparações do IF/ELSE/IF
* Dica3:A função IF/ELSE/IF após encontrar uma condição verdadeira, não executa as demais comparações
* Dica4:Montar a função IF/ELSE/IF de forma que a condição anterior não atenda a próxima
*/
//DEFINICOES INICIAIS
#define ledVerde 2 //definido que o "ledVerde" será configurado mo pino 2
#define ledAmarelo 3 //definido que o "ledAmarelo" será configurado mo pino 3
#define ledVermelho 4 //definido que o "ledVermelho" será configurado mo pino 4
#define ntc A0 //definido que o "ntc" será configurado mo pino A0
//DECLARAcAO DE VARIAVEIS GLOBAIS
int estado;
//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);
pinMode(ledVerde, OUTPUT); //ledverde definido como saída
pinMode(ledAmarelo, OUTPUT); //ledAmarelo definido como saída
pinMode(ledVermelho, OUTPUT); //ledVermelho definido como saida
}
//FUNÇÕES COMPLEMENTARES
void debug (){ //funçao debug
Serial.println(analogRead(ntc)); //abre a porta serial, e coloca o valor do ntc programado na porta serial
delay(200); //tempo de 200 ms
}
//PROGRAMA PRINCIPAL
void loop() {
estado = analogRead(ntc); //pega o valor do ntc e passa para o estado
if (estado < 476){ // se a temperatura for menor que 476
digitalWrite(ledVerde, HIGH); //led verde aceso
digitalWrite(ledAmarelo, LOW); //led amarelo apagado
digitalWrite(ledVermelho, LOW); //led vermelho apagado
}
else if (estado <= 642){ //se a temperarutura for menor, ou igual que 642
digitalWrite(ledVermelho, LOW); //led vermelho apagado
digitalWrite(ledAmarelo, HIGH); //led amarelo aceso
digitalWrite(ledVerde, LOW); //led verde desligado
} else { //se a temperatura for maior que 642 ira rodar o programa abaixo
digitalWrite(ledVermelho, LOW); //led vermelho apagado
digitalWrite(ledAmarelo, LOW); //led amarelo apagado
digitalWrite(ledVerde, HIGH); //led verde aceso
}
}
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.7
* Tema: Função IF / ELSE / IF
* Atividade: Termometro de Leds
* Descrição: Utilizar 3 leds para informar a temperatura, se abaixo de 30 graus verde, se maior que 30 e menor que 50 amarelo e se maior que 50 vermelho
* Hardware: Ligar os LED em pinos digital configurados como SAÍDA e o NTC em uma entrada analógica
* Comandos: pinMode, analogRead, IF ELSE IF, digitalWrite
* Dica1: o conversor analógico possui 10 bits ou seja até 1024
* Dica2:Usar o debug() para verificar os valores do NTC para cada temperatura e aplicar nas comparações do IF/ELSE/IF
* Dica3:A função IF/ELSE/IF após encontrar uma condição verdadeira, não executa as demais comparações
* Dica4:Montar a função IF/ELSE/IF de forma que a condição anterior não atenda a próxima
*/
//DEFINICOES INICIAIS
#define ledVerde 2 //definido que o "ledVerde" será configurado mo pino 2
#define ledAmarelo 3 //definido que o "ledAmarelo" será configurado mo pino 3
#define ledVermelho 4 //definido que o "ledVermelho" será configurado mo pino 4
#define ntc A0 //definido que o "ntc" será configurado mo pino A0
//DECLARAcAO DE VARIAVEIS GLOBAIS
int estado;
//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);
pinMode(ledVerde, OUTPUT); //ledverde definido como saída
pinMode(ledAmarelo, OUTPUT); //ledAmarelo definido como saída
pinMode(ledVermelho, OUTPUT); //ledVermelho definido como saida
}
//FUNÇÕES COMPLEMENTARES
void debug (){ //funçao debug
Serial.println(analogRead(ntc)); //abre a porta serial, e coloca o valor do ntc programado na porta serial
delay(200); //tempo de 200 ms
}
//PROGRAMA PRINCIPAL
void loop() {
estado = analogRead(ntc); //pega o valor do ntc e passa para o estado
if (estado < 476){ // se a temperatura for menor que 476
digitalWrite(ledVerde, HIGH); //led verde aceso
digitalWrite(ledAmarelo, LOW); //led amarelo apagado
digitalWrite(ledVermelho, LOW); //led vermelho apagado
}
else if (estado <= 642){ //se a temperarutura for menor, ou igual que 642
digitalWrite(ledVermelho, LOW); //led vermelho apagado
digitalWrite(ledAmarelo, HIGH); //led amarelo aceso
digitalWrite(ledVerde, LOW); //led verde desligado
} else { //se a temperatura for maior que 642 ira rodar o programa abaixo
digitalWrite(ledVermelho, LOW); //led vermelho apagado
digitalWrite(ledAmarelo, LOW); //led amarelo apagado
digitalWrite(ledVerde, HIGH); //led verde aceso
}
}
Permissões neste sub-fórum
Não podes responder a tópicos