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

Ir para baixo
Vitor Siqueira
Vitor Siqueira
Mensagens : 89
Data de inscrição : 16/04/2022
Escola : Lindaura

1.19 resolvido Empty 1.19 resolvido

Dom Out 02, 2022 10:28 pm
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.19
* Tema: Operadores Lógicos
* Atividade: Associar um LED a duas teclas usando a função OU entre as teclas e montar a tabela verdade
* Descrição: O LED deverá acender quando uma ou outra tecla for pressionar
* Hardware: Ligar duas teclas a dois pinos digitais configurados como ENTRADA e um led em outro pino digital configurado como SAÍDA
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, !(operador NOT) operador | (OU)
* 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
* Questão1: Preencha a tabela abaixo:
*       TECLA1       |      TECLA2        |   LED (aceso ou apagado?)
* depressionada | depressionada | apagada
* depressionada | pressionada     | acesa
* pressionada     | depressionada | acesa
* pressionada     | pressionada     | acesa
*/

//DEFINICOES INICIAIS
#define tecla1 2//define que pino 2 vai se chamar tecla1
#define tecla2 3//define que pino 3 vai se chamar tecla2
#define luzinha 4//define que pino 4 vai se chamar luzinha
//DECLARAcAO DE VARIAVEIS
bool estado = 0;//variavel de estado

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla1, INPUT_PULLUP);//declara tecla1 como pino de entrada
pinMode(tecla2, INPUT_PULLUP);//declara tecla2 como pino de entrada
pinMode(luzinha, OUTPUT);//declara luzinha como pino de saida
}

//PROGRAMA PRINCIPAL
void loop() {
estado = !digitalRead(tecla1) OU !digitalRead(tecla2);//declara que quando o pino estiver variando de 0 pra 1 ou 1 para 0 ele ira acender, ele tambem ira acender quando ambos os estados estivem igualados (1 e 1)
digitalWrite(luzinha, estado);//acende o led de acordo com o estado da tecla
}
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

1.19 resolvido Empty Re: 1.19 resolvido

Ter Out 04, 2022 12:00 am
Oi Vitor, aqui precisa usar o operador correto na função lógica desse programa.
Outro detalhe, se o programa não funcionou como preencheu a tabela?
Vitor Siqueira
Vitor Siqueira
Mensagens : 89
Data de inscrição : 16/04/2022
Escola : Lindaura

1.19 resolvido Empty Re: 1.19 resolvido

Ter Out 04, 2022 12:14 am
usei do exemplo dado na apostila pra preencher a tabela
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

1.19 resolvido Empty Re: 1.19 resolvido

Ter Out 04, 2022 1:05 am
Blz, mas o bom é fazer o programa para comprovar por si mesmo, arruma o operador e testa o programa para dar a nota.
Vitor Siqueira
Vitor Siqueira
Mensagens : 89
Data de inscrição : 16/04/2022
Escola : Lindaura

1.19 resolvido Empty Re: 1.19 resolvido

Ter Out 04, 2022 1:26 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.19
* Tema: Operadores Lógicos
* Atividade: Associar um LED a duas teclas usando a função OU entre as teclas e montar a tabela verdade
* Descrição: O LED deverá acender quando uma ou outra tecla for pressionar
* Hardware: Ligar duas teclas a dois pinos digitais configurados como ENTRADA e um led em outro pino digital configurado como SAÍDA
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, !(operador NOT) operador | (OU)
* 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
* Questão1: Preencha a tabela abaixo:
* TECLA1 | TECLA2 | LED (aceso ou apagado?)
* depressionada | depressionada | apagada
* depressionada | pressionada | acesa
* pressionada | depressionada | acesa
* pressionada | pressionada | acesa
*/

//DEFINICOES INICIAIS
#define tecla1 2//define que pino 2 vai se chamar tecla1
#define tecla2 3//define que pino 3 vai se chamar tecla2
#define luzinha 4//define que pino 4 vai se chamar luzinha
//DECLARAcAO DE VARIAVEIS
bool estado = 0;//variavel de estado

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla1, INPUT_PULLUP);//declara tecla1 como pino de entrada
pinMode(tecla2, INPUT_PULLUP);//declara tecla2 como pino de entrada
pinMode(luzinha, OUTPUT);//declara luzinha como pino de saida
}

//PROGRAMA PRINCIPAL
void loop() {
estado = !digitalRead(tecla1) || !digitalRead(tecla2);//declara que quando o pino estiver variando de 0 pra 1 ou 1 para 0 ele ira acender, ele tambem ira acender quando ambos os estados estivem igualados (1 e 1)
digitalWrite(luzinha, estado);//acende o led de acordo com o estado da tecla
}
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

1.19 resolvido Empty Re: 1.19 resolvido

Ter Out 04, 2022 11:28 pm
Muito bom Vitor, nota 10.0
Conteúdo patrocinado

1.19 resolvido Empty Re: 1.19 resolvido

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