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

Ir para baixo
avatar
LucyAnna800
Mensagens : 98
Data de inscrição : 11/06/2022
Idade : 12
Escola : Colegio Lindaura Ribeiro Lucas

exercicio 2.4  Empty exercicio 2.4

Ter maio 30, 2023 10:44 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.4
* Tema: Função IF
* Atividade: Acender um LED se a luminosidade for maior que o ajuste do trimpot
* Descrição: Usar uma entrada analógica para medir a intensidade da luz e outra para comparar o valor e usar esse valor para acender um LED
* Hardware: Ligar os leds nos pino digitais configurado como SAÍDA DIGITAL e o LDR e o TRIMPOT em uma entrada analógica
* Comandos: pinMode, analogRead, digitalWrite,delay, map, IF ELSE
* Dica1:A o conversor analógico possui 10 bits ou seja de 0 até 1024
* Dica2:Comparar se o valor do LDR ultrapassar o valor estabelecido pelo trimpot e acender o LED e se baixar apagar o LED
*/

//DEFINICOES INICIAIS
#define led800 3
#define ldr801 A0
#define trimpot802 A1

//DECLARAcAO DE VARIAVEIS GLOBAIS
int luminosidade803;
int ajuste804;

//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);
pinMode(led800, OUTPUT);
}

//FUNÇÕES COMPLEMENTARES
void debug(){
Serial.print("luminosidade803 = ");
Serial.print(luminosidade803);
Serial.print("trimpot802 = ");
Serial.println(ajuste804);
}

//PROGRAMA PRINCIPAL
void loop() {
luminosidade803 = analogRead(ldr801);
ajuste804 = analogRead(trimpot802);
debug();
luminosidade803 = map(analogRead(ldr801),11,834,0,1022);

if(luminosidade803 >= trimpot802){
digitalWrite(led800, HIGH);
}else {
digitalWrite(led800, LOW);
}
}
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5115
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

exercicio 2.4  Empty Re: exercicio 2.4

Sex Jun 02, 2023 9:53 pm
Muito bom Lucy, tudo certinho, só faltaram os comentários. Nota 6.0
Um detalhe que vi nas suas notas, falta o exercício 1.19 para ganhar a condecoração do capitulo 1, faz uma revisão nele, que estou louco para te dar essa condecoração.
avatar
LucyAnna800
Mensagens : 98
Data de inscrição : 11/06/2022
Idade : 12
Escola : Colegio Lindaura Ribeiro Lucas

exercicio 2.4  Empty exe 2.04

Dom Jun 04, 2023 11:32 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.4
* Tema: Função IF
* Atividade: Acender um LED se a luminosidade for maior que o ajuste do trimpot
* Descrição: Usar uma entrada analógica para medir a intensidade da luz e outra para comparar o valor e usar esse valor para acender um LED
* Hardware: Ligar os leds nos pino digitais configurado como SAÍDA DIGITAL e o LDR e o TRIMPOT em uma entrada analógica
* Comandos: pinMode, analogRead, digitalWrite,delay, map, IF ELSE
* Dica1:A o conversor analógico possui 10 bits ou seja de 0 até 1024
* Dica2:Comparar se o valor do LDR ultrapassar o valor estabelecido pelo trimpot e acender o LED e se baixar apagar o LED
*/

//DEFINICOES INICIAIS
#define led800 3  //pino 3 batizado de led800
#define ldr801 A0  //pino A0 batizado de ldr801
#define trimpot802 A1  //pino A1 batizado de trimpot802

//DECLARAcAO DE VARIAVEIS GLOBAIS
int luminosidade803;  //variavel int batizada de luminosidade803
int ajuste804;  //variavel int batizada de ajuste804

//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);  //iniciando uma porta serial
pinMode(led800, OUTPUT);  //led800 configurado como saída
}

//FUNÇÕES COMPLEMENTARES
void debug(){  //abrindo um void debug
Serial.print("luminosidade803 = ");  //imprimir uma porta serial no texto luminosidade803 = ...//Imprime o texto entre aspas
Serial.print(luminosidade803);  //imprimir uma porta serial na variavel luminosidade803 //imprime na serial o valor guardado na variável
Serial.print("trimpot802 = ");  //imprimir uma porta serial no texto trimpot802 = ...//Imprime o texto entre aspas
Serial.println(ajuste804);  //imprimir e pular uma linha na variavel ajuste804 //imprime na serial o valor guardado na variável
}

//PROGRAMA PRINCIPAL
void loop() {
luminosidade803 = analogRead(ldr801);  //agora a luminosidade do led é controlada pela luminosidade do ambiente(ldr801) //A variável luminosidade803 recebe o valor da leitura analógica do pino denominado de ldr810
debug();  //tudo que esta escrito no debug esta escrito aqui
luminosidade803 = map(analogRead(ldr801),11,834,0,1022);  //luminosidade passou pela função map // Observe que quando rodar esse comando o reusltado dessa função vai para variável, então as duas linhas de cima perdem totalmente o sentido, pois os valores gerados por elas não foram usados e aqui foi sobreescrito.

if(luminosidade803 >= trimpot802){  //se a luminosidade for maior ou igual ao valor do trimpot o que esta no bloco de intruções vai acontecer
digitalWrite(led800, HIGH);  //led800 aceso
}else {  //se der falso no comando if o que esta neste bloco de instruções vai acontecer
digitalWrite(led800, LOW);  //led800 apagado
}
}
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5115
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

exercicio 2.4  Empty Re: exercicio 2.4

Ter Jun 06, 2023 12:10 am
Oi Lucy, vou dar nota 10.0. Mas estou achando estranho os comentários. Vou refazer os comentários no seu programa em vermelho.
Peço que releia e veja se foi isso mesmo que entendeu sobre esse programa.
Conteúdo patrocinado

exercicio 2.4  Empty Re: exercicio 2.4

Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos