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

Ir para baixo
Thiaguin
Thiaguin
Mensagens : 176
Data de inscrição : 03/03/2020

Exercício 1.20 Operador Lógico Ou Exclusivo Empty Exercício 1.20 Operador Lógico Ou Exclusivo

Qua Jul 15, 2020 6:28 pm
/*
* CURSO DE ROBOTICA 2019
*
* Exercicio: 1.20
* 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 ^ (OU EXCLUSIVO)
* 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 |apagado
* depressionada | pressionada |aceso
* pressionada | depressionada |aceso
* pressionada | pressionada |apagado
*/

//DEFINICOES INICIAIS
#define led1 4 //Definido que o pino 4 irá se chamar
#define tecla1 2 //Definido que o pino que 2 irá se chamar tecla1
#define tecla2 3 //Definido que o pino que 3 irá se chamar tecla2

//DECLARAcAO DE VARIAVEIS
bool estado=0;//Variável para ser atribuído o valor do estado, no caso está com o valor 0

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(led1,OUTPUT);//Configurado que o pino 4 como saída
pinMode(tecla1,INPUT_PULLUP);//Configurado o pino 2 como entrada com um resistor de polarização
pinMode(tecla2,INPUT_PULLUP);//Configurado o pino 3 como entrada com um resistor de polarização
}

//PROGRAMA PRINCIPAL
void loop() {
estado=!digitalRead(tecla1) ^ !digitalRead(tecla2);//Quando apenas uma das teclas estiver pressionada o estado passará a ter nível lógico 1
digitalWrite(led1,estado);//O valor do estado determinará se o led1 ficará aceso ou apagado
}
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 1.20 Operador Lógico Ou Exclusivo Empty Re: Exercício 1.20 Operador Lógico Ou Exclusivo

Qui Jul 23, 2020 9:58 pm
Muito bom Thiago , nota 10.0.
Para finalizar o capítulo 1 e ganhar a condecoração precisa revisar somente o ex 1.17
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos