Exercício 2.5
Qui Jun 25, 2020 3:26 pm
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.5
* Tema: Função IF
* Atividade: Tecla LED acende apaga
* Descrição: Quando pressionar uma tecla um led deve acender e ao pressionar novamente o LED apaga
* Hardware: Ligar uma tecla a uma das pino digital configurado como ENTRADA e um led em outro pino digital configurado como SAÍDA
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, !(operador NOT), IF, operador Lógico &&
* DICA1: Usar uma variável para guardar o estado anterior da tecla e evitar multiplas leituras
* DICA2: Usar o operador lógico && para controlar as leituras, de forma seja interpretada a tecla única vez a cada acionamento
* DICA3: Utilizar uma variável para controlar o estado do led e inverter o estado a cada ciclo de leitura da tecla.
*/
//DEFINICOES INICIAIS
#define tecla 2 //pino 2 se chamará tecla
#define led 3 //pino 3 se chamará led
//DECLARAcAO DE VARIAVEIS
bool estadoLed = 0; //variavel
bool teclaPressionada = 0;//variavel
//FUNÇÕES COMPLEMENTARES
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla, INPUT_PULLUP);//tecla está configurada como entrada
pinMode(led,OUTPUT);//led está configurada como saida
}
//PROGRAMA PRINCIPAL
void loop() {
if(digitalRead(tecla) == LOW && teclaPressionada ==0){// 0 && = 0; 0&&1=0 ; 1&&1=1;//função if
teclaPressionada = 1;//teclaPressionada ligada
estadoLed = ! estadoLed;//teclaPressionada ligada
digitalWrite(led,estadoLed); //led irá ligar com a variavel
}
if (digitalRead(tecla) == HIGH && teclaPressionada == 1) { //led irá ligar com a variavel
teclaPressionada = 0; //teclaPressionada apagada
}
}
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.5
* Tema: Função IF
* Atividade: Tecla LED acende apaga
* Descrição: Quando pressionar uma tecla um led deve acender e ao pressionar novamente o LED apaga
* Hardware: Ligar uma tecla a uma das pino digital configurado como ENTRADA e um led em outro pino digital configurado como SAÍDA
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, !(operador NOT), IF, operador Lógico &&
* DICA1: Usar uma variável para guardar o estado anterior da tecla e evitar multiplas leituras
* DICA2: Usar o operador lógico && para controlar as leituras, de forma seja interpretada a tecla única vez a cada acionamento
* DICA3: Utilizar uma variável para controlar o estado do led e inverter o estado a cada ciclo de leitura da tecla.
*/
//DEFINICOES INICIAIS
#define tecla 2 //pino 2 se chamará tecla
#define led 3 //pino 3 se chamará led
//DECLARAcAO DE VARIAVEIS
bool estadoLed = 0; //variavel
bool teclaPressionada = 0;//variavel
//FUNÇÕES COMPLEMENTARES
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla, INPUT_PULLUP);//tecla está configurada como entrada
pinMode(led,OUTPUT);//led está configurada como saida
}
//PROGRAMA PRINCIPAL
void loop() {
if(digitalRead(tecla) == LOW && teclaPressionada ==0){// 0 && = 0; 0&&1=0 ; 1&&1=1;//função if
teclaPressionada = 1;//teclaPressionada ligada
estadoLed = ! estadoLed;//teclaPressionada ligada
digitalWrite(led,estadoLed); //led irá ligar com a variavel
}
if (digitalRead(tecla) == HIGH && teclaPressionada == 1) { //led irá ligar com a variavel
teclaPressionada = 0; //teclaPressionada apagada
}
}
Re: Exercício 2.5
Seg Jun 29, 2020 11:13 pm
Daniel, O programa está correto, mas os comentários não descrevem o entendimento do programa. Nota 6.0
Responda as perguntas abaixo para melhorar a nota.
1 - Assistiu a videoaula inteira ou só a parte que o programa estava pronto?
2 - Qual a função da variável teclaPressionada nesse programa?
( ) inverter o estado do led
( ) guardar o estado da tecla
( ) evitar multiplas leituras da tecla
( ) fazer o programa rodar somente quando acionada
( ) guardar o resultado da operação lógica &&
Responda as perguntas abaixo para melhorar a nota.
1 - Assistiu a videoaula inteira ou só a parte que o programa estava pronto?
2 - Qual a função da variável teclaPressionada nesse programa?
( ) inverter o estado do led
( ) guardar o estado da tecla
( ) evitar multiplas leituras da tecla
( ) fazer o programa rodar somente quando acionada
( ) guardar o resultado da operação lógica &&
Permissões neste sub-fórum
Não podes responder a tópicos
|
|