- Renata Pinheiro B
- Mensagens : 54
Data de inscrição : 31/07/2021
Idade : 16
Escola : Lindaura Ribeiro Lucas
Exercício 1.19 resolvido
Qua Dez 08, 2021 2:16 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 tecla1 2//define que o pino 2 vai se chamar tecla1
#define tecla2 3//define que o pino 3 vai se chamar tecla2
#define led 4//define que o pino 4 vai se chamar led
//DECLARAcAO DE VARIAVEIS
bool estado = 0;//variável bool definida como estado
//FUNÇÕES COMPLEMENTARES
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla1, INPUT_PULLUP);//define a tecla1 como entrada
pinMode(tecla2, INPUT_PULLUP);//define a tecla2 como entrada
pinMode(led, OUTPUT);//define o led como saída
}
//PROGRAMA PRINCIPAL
void loop() {
estado = !digitalRead(tecla1) | !digitalRead(tecla2);//quando a tecla1 ou a tecla2 forem pressionadas ou se as duas forem pressionadas ao mesmo tempo executa o programa abaixo
digitalWrite(led, estado);//acende o led de acordo com o valor da varíavel estado
}
* 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 tecla1 2//define que o pino 2 vai se chamar tecla1
#define tecla2 3//define que o pino 3 vai se chamar tecla2
#define led 4//define que o pino 4 vai se chamar led
//DECLARAcAO DE VARIAVEIS
bool estado = 0;//variável bool definida como estado
//FUNÇÕES COMPLEMENTARES
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla1, INPUT_PULLUP);//define a tecla1 como entrada
pinMode(tecla2, INPUT_PULLUP);//define a tecla2 como entrada
pinMode(led, OUTPUT);//define o led como saída
}
//PROGRAMA PRINCIPAL
void loop() {
estado = !digitalRead(tecla1) | !digitalRead(tecla2);//quando a tecla1 ou a tecla2 forem pressionadas ou se as duas forem pressionadas ao mesmo tempo executa o programa abaixo
digitalWrite(led, estado);//acende o led de acordo com o valor da varíavel estado
}
Permissões neste sub-fórum
Não podes responder a tópicos