Exercício 1.20
Ter Jun 16, 2020 4:08 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 |0
* depressionada | pressionada |1
* pressionada | depressionada |1
* pressionada | pressionada |0
*/
//DEFINICOES INICIAIS
#define tecla1 2 //pino 2 vai se chamar tecla1
#define tecla2 3 //pino 3 vai se chamar tecla2
#define led 4 //pino 4 vais se chamar led4
//DECLARAcAO DE VARIAVEIS
bool estado =0; //
//FUNÇÕES COMPLEMENTARES
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla1, INPUT_PULLUP); //tecla1 está configurado como entrada
pinMode(tecla2, INPUT_PULLUP); //tecla2 está configurado como entrada
pinMode(led,OUTPUT); //led está configurado como saida
}
//PROGRAMA PRINCIPAL
void loop() {
estado = !digitalRead(tecla1) ^ !digitalRead(tecla2); //o programa lê quando as teclas estão apertadas
digitalWrite(led, estado); //led irá acender com a variavel
}
* 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 |0
* depressionada | pressionada |1
* pressionada | depressionada |1
* pressionada | pressionada |0
*/
//DEFINICOES INICIAIS
#define tecla1 2 //pino 2 vai se chamar tecla1
#define tecla2 3 //pino 3 vai se chamar tecla2
#define led 4 //pino 4 vais se chamar led4
//DECLARAcAO DE VARIAVEIS
bool estado =0; //
//FUNÇÕES COMPLEMENTARES
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla1, INPUT_PULLUP); //tecla1 está configurado como entrada
pinMode(tecla2, INPUT_PULLUP); //tecla2 está configurado como entrada
pinMode(led,OUTPUT); //led está configurado como saida
}
//PROGRAMA PRINCIPAL
void loop() {
estado = !digitalRead(tecla1) ^ !digitalRead(tecla2); //o programa lê quando as teclas estão apertadas
digitalWrite(led, estado); //led irá acender com a variavel
}
Re: Exercício 1.20
Ter Jun 23, 2020 10:29 pm
Daniel, o programa está correto, nota 10.0
Sobre o comentário seria mais adequado assim: //le o estado das teclas e carrega na variável estado o resultado da combinação das teclas conforme operação ou exclusivo.
Sobre o comentário seria mais adequado assim: //le o estado das teclas e carrega na variável estado o resultado da combinação das teclas conforme operação ou exclusivo.
Permissões neste sub-fórum
Não podes responder a tópicos
|
|