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 : 110
Data de inscrição : 03/03/2023
Idade : 11
Escola : Colégio Estadual Colônia Murici

exercício 2.01 resolvido Empty exercício 2.01 resolvido

Ter Out 03, 2023 8:28 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.01
* Tema: Função IF
* Atividade: Associar um LED a uma tecla
* Descrição: Quando pressionar uma tecla um led deve acender
* Hardware: Ligar uma tecla a uma das pino digital configurado como ENTRADA e um led em outro pino digital configurado como SAIDA
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, !(operador NOT), IF
* DICA1: A função !(not) deve ser usada antes de cada tecla porque a tecla está com resistor de pullup e ligada ao 0V, logo fica em DOWN quando pressionada
* DICA2: Usar a função if() e na condição testar se a tecla foi pressionada, se sim acender o led
* DICA3: Operadores Lógicos == , != , > , < , >= , <= , !
* QUESTÃO: Testar qual condição retornada nas seguintes operações, responda verdadeiro ou falso:
* 0 = falso
* 1 = verdadeiro
* 25 = verdadeiras
* 5 - 10 verdadeiro
* 13 - 13 falso
* 0 == 0 verdadeiro
* 1 != 0 verdadeiro
* (1 - 1) == 0 verdadeiro
* 5 > 10 falso
* 6 < 6 falso
* 6 >= 6 verdadeiro
* (3 + 4) < (10 - 20) falso
* !1 falso
* digitalRead(tecla1) Falso
* !digitalRead(tecla1) verdadeiro
* digitalRead(tecla1) == LOW verdadeiro
* analogRead(A0) > 250 verdadeiro
* variavel > 100 falso
* variavel == FALSE verdadeiro
*/

//DEFINICOES INICIAIS
#define tecla1 1//define tecla e pino
#define led6 2//define led e pino


//DECLARAcAO DE VARIAVEIS
bool aceso = 0;//o valor da variavel é igual a 0

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla1, INPUT_PULLUP);//configura a entrada da tecla
pinMode(led6, OUTPUT);//configura a saida do led
}

//PROGRAMA PRINCIPAL
void loop() {
aceso = 0;//valor da variavel bool = 0
if(!digitalRead(tecla1)){//quando pressionada sai de 0 para 1
aceso = 1;//quando pressionada sai de 0 para 1 e acende o led
delay(100);//tempo do led aceso
}
digitalWrite(led6, HIGH);//acendde o led com base no valor da variavel
}
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5039
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

exercício 2.01 resolvido Empty Re: exercício 2.01 resolvido

Ter Nov 07, 2023 11:15 pm
Oi Ana, as respostas estão corretas, o programa esta bcom os comentarios e a lógica tem um pequeno detalhe num dos comandos, veja abaixo:
digitalWrite(led6, HIGH);//acendde o led com base no valor da variavel
O comentário até está correto passa o valor da variável, então no lugar do HIGH precisa usar a variável.
Nota 6.0
Ana Clara Leschnhak
Ana Clara Leschnhak
Mensagens : 110
Data de inscrição : 03/03/2023
Idade : 11
Escola : Colégio Estadual Colônia Murici

exercício 2.01 resolvido Empty Correção:

Qui Dez 07, 2023 8:03 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.01
* Tema: Função IF
* Atividade: Associar um LED a uma tecla
* Descrição: Quando pressionar uma tecla um led deve acender
* Hardware: Ligar uma tecla a uma das pino digital configurado como ENTRADA e um led em outro pino digital configurado como SAIDA
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, !(operador NOT), IF
* DICA1: A função !(not) deve ser usada antes de cada tecla porque a tecla está com resistor de pullup e ligada ao 0V, logo fica em DOWN quando pressionada
* DICA2: Usar a função if() e na condição testar se a tecla foi pressionada, se sim acender o led
* DICA3: Operadores Lógicos == , != , > , < , >= , <= , !
* QUESTÃO: Testar qual condição retornada nas seguintes operações, responda verdadeiro ou falso:
* 0 = falso
* 1 = verdadeiro
* 25 = verdadeiras
* 5 - 10 verdadeiro
* 13 - 13 falso
* 0 == 0 verdadeiro
* 1 != 0 verdadeiro
* (1 - 1) == 0 verdadeiro
* 5 > 10 falso
* 6 < 6 falso
* 6 >= 6 verdadeiro
* (3 + 4) < (10 - 20) falso
* !1 falso
* digitalRead(tecla1) Falso
* !digitalRead(tecla1) verdadeiro
* digitalRead(tecla1) == LOW verdadeiro
* analogRead(A0) > 250 verdadeiro
* variavel > 100 falso
* variavel == FALSE verdadeiro
*/

//DEFINICOES INICIAIS
#define tecla1 1//define tecla e pino
#define led6 2//define led e pino


//DECLARAcAO DE VARIAVEIS
bool aceso = 0;//o valor da variavel é igual a 0

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla1, INPUT_PULLUP);//configura a entrada da tecla
pinMode(led6, OUTPUT);//configura a saida do led
}

//PROGRAMA PRINCIPAL
void loop() {
aceso = 0;//valor da variavel bool = 0
if(!digitalRead(tecla1)){//quando pressionada sai de 0 para 1
aceso = 1;//quando pressionada sai de 0 para 1 e acende o led
delay(100);//tempo do led aceso
}
digitalWrite(led6, bool);//acende o led com base no valor da variavel
}
Thiaguin
Thiaguin
Mensagens : 176
Data de inscrição : 03/03/2020

exercício 2.01 resolvido Empty Re: exercício 2.01 resolvido

Sáb Mar 23, 2024 10:16 am
Erro na linha:
digitalWrite(led6, bool);//acende o led com base no valor da variavel
Corrigir para o programa compilar.
exercício 2.01 resolvido 2a02ea12
Ana Clara Leschnhak
Ana Clara Leschnhak
Mensagens : 110
Data de inscrição : 03/03/2023
Idade : 11
Escola : Colégio Estadual Colônia Murici

exercício 2.01 resolvido Empty Re: exercício 2.01 resolvido

Ter Abr 23, 2024 9:33 pm
/*
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.1
* Tema: Função IF
* Atividade: Associar um LED a uma tecla
* Descrição: Quando pressionar uma tecla um led deve acender
* Hardware: Ligar uma tecla a uma das pino digital configurado como ENTRADA e um led em outro pino digital configurado como SAÍDA
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, !(operador NOT), IF
* DICA1: A função !(not) deve ser usada antes de cada tecla porque a tecla está com resistor de pullup e ligada ao 0V, logo fica em DOWN quando pressionada
* DICA2: Usar a função if() e na condição testar se a tecla foi pressionada, se sim acender o led
* DICA3: Operadores Lógicos == , != , > , < , >= , <= , !
* QUESTÃO: Testar qual condição retornada nas seguintes operações, responda verdadeiro ou falso:
* 0 // falso
* 1 // verdadeiro
* 25 //verdadeiro
* 5 - 10 //verdadeiro
* 13 - 13 //falso
* 0 == 0 //verdadeiro
* 1 != 0 //verdadeiro
* (1 - 1) == 0 //veradeiro
* 5 > 10 //falso
* 6 < 6 //falso
* 6 >= 6 //verdadeiro
*(3 + 4) < (10 -20) //falso
* !1 //falso
* digitalRead(tecla1) // verdadeiro
* !digitalRead(tecla1) //falso
* digitalRead(tecla1) == LOW //falso
* analogRead(A0) > 250 //verdadeiro
* variavel > 100 //falso
* variavel == FALSE //aceso
*/

//DEFINICOES INICIAIS
#define led1 2//define o led
#define tecla1 3//define a tecla

//DECLARAcAO DE VARIAVEIS
bool aceso = 0;//variavel renomiada como aceso

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(led1, OUTPUT);//define o led como saida
pinMode(tecla1, INPUT_PULLUP);//define a tecla como saida
}

//PROGRAMA PRINCIPAL
void loop() {
aceso = 0;// variavel aceso com o valor 0
if(aceso == false) {//funçao que executa outra funçao
aceso = 1;// variavel aceso com o valor 1
digitalWrite(led1, HIGH);//acende o led
}
}

Monica Moreno
Monica Moreno
Mensagens : 685
Data de inscrição : 03/03/2020
Idade : 15
Escola : Colegio Lindaura Ribeiro Lucas

exercício 2.01 resolvido Empty Re: exercício 2.01 resolvido

Qua Abr 24, 2024 4:04 pm
Boa Tarde Ana Clara
Tudo Bem?

Nota 10.0
Parabens
Conteúdo patrocinado

exercício 2.01 resolvido Empty Re: exercício 2.01 resolvido

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