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

Ir para baixo
gustavo de oliveira pires
gustavo de oliveira pires
Mensagens : 58
Data de inscrição : 31/08/2022
Escola : murici

exercicio 1.18 Empty exercicio 1.18

Qua Jun 21, 2023 10:31 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.18
* Tema: Operadores Lógicos
* Atividade: Associar um LED a duas teclas usando a função E entre as teclas e montar a tabela verdade
* Descrição: O LED deverá acender somente quando pressionar as duas teclas simultaneamente
* 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 & (E)
* 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 |aceso
* depressionada | pressionada |apagado
* pressionada | depressionada |apagado
* pressionada | pressionada |aceso
*/

//DEFINICOES INICIAIS
#define tecla1 2 //define a tecla que vai ser usada
#define tecla2 3 //define a tecla que vai ser usada
#define led 4 //define o led que vaiser usado
//DECLARAcAO DE VARIAVEIS
bool estado = 0; //define a variavel que vai ser usada

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla1, INPUT_PULLUP); //define tecla1 como entrada
pinMode(tecla2, INPUT_PULLUP); //define tecla2 como entrada
pinMode(led, OUTPUT); //define o led como entrada
}

//PROGRAMA PRINCIPAL
void loop() {
estado = !digitalRead(tecla1) & !digitalRead(tecla2); //define o tempo das teclas de acordo com a variavel
digitalWrite(led, estado); //define que o tempo do led = o tempo da variavel

}

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 1.18 Empty Re: exercicio 1.18

Sex Jun 23, 2023 12:08 am
Oi Gustavo, o programa está correto, porém seus comentários não ilustram o entendimento das operações lógicas, precisa revisar.
Outro detalhe a tabela verdade do operador E não é essa. Para testar tem que colocar a tecla em normalmente fechada. Na videoaula mostro como fazer.
Nota 6.0
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos