Exercício 1.19 operador Lógico OU
2 participantes
- Thiaguin
- Mensagens : 176
Data de inscrição : 03/03/2020
Exercício 1.19 operador Lógico OU
Qua Jul 15, 2020 6:20 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 |apagado
* depressionada | pressionada |aceso
* pressionada | depressionada |aceso
* pressionada | pressionada |aceso
*/
//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 ou as duas teclas estiverem pressionadas 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
}
* 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 |apagado
* depressionada | pressionada |aceso
* pressionada | depressionada |aceso
* pressionada | pressionada |aceso
*/
//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 ou as duas teclas estiverem pressionadas 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
}
Permissões neste sub-fórum
Não podes responder a tópicos
|
|