Exercício 2.05 Tecla Led Acende Apaga
2 participantes
- Thiaguin
- Mensagens : 177
Data de inscrição : 03/03/2020
Exercício 2.05 Tecla Led Acende Apaga
Seg Ago 03, 2020 4:45 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 led1 4 //Definido que o pino 4 irá se chamar led1
#define tecla 3//Definido que o pino 3 irá se chamar tecla
//DECLARAcAO DE VARIAVEIS
bool estado=0 ;//Variável para ser atribuído o valor do estado do led
bool ajuste=0 ;//Variável para ser atribuído o valor do ajuste para que não ocorra erros de multiplas leituras
//FUNÇÕES COMPLEMENTARES
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(led1,OUTPUT);//Configurado o pino 4 como saída
pinMode(tecla,INPUT_PULLUP);//Configurado o pino 3 como entrada com um resistor de polarização
}
//PROGRAMA PRINCIPAL
void loop() {
if(!digitalRead(tecla)&&ajuste==0){//O valor do led só será verdadeiro se o valor das duas variáveis forem verdadeiros
ajuste=1;//O valor da variável ajuste passará a ser 1
estado=!estado;//O estado do led será gravado como o inverso do estado do led
digitalWrite(led1,estado);//O valor implementado à variável estado será escrito no led
}
if(digitalRead(tecla)&&ajuste==1){
ajuste=0;//O valor da variável ajuste passará a ser 0
}
}
* 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 led1 4 //Definido que o pino 4 irá se chamar led1
#define tecla 3//Definido que o pino 3 irá se chamar tecla
//DECLARAcAO DE VARIAVEIS
bool estado=0 ;//Variável para ser atribuído o valor do estado do led
bool ajuste=0 ;//Variável para ser atribuído o valor do ajuste para que não ocorra erros de multiplas leituras
//FUNÇÕES COMPLEMENTARES
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(led1,OUTPUT);//Configurado o pino 4 como saída
pinMode(tecla,INPUT_PULLUP);//Configurado o pino 3 como entrada com um resistor de polarização
}
//PROGRAMA PRINCIPAL
void loop() {
if(!digitalRead(tecla)&&ajuste==0){//O valor do led só será verdadeiro se o valor das duas variáveis forem verdadeiros
ajuste=1;//O valor da variável ajuste passará a ser 1
estado=!estado;//O estado do led será gravado como o inverso do estado do led
digitalWrite(led1,estado);//O valor implementado à variável estado será escrito no led
}
if(digitalRead(tecla)&&ajuste==1){
ajuste=0;//O valor da variável ajuste passará a ser 0
}
}
Re: Exercício 2.05 Tecla Led Acende Apaga
Seg Ago 03, 2020 10:34 pm
Oi Thiago, Como o programa está correto vou dar nota 10.0.
Mas nos comentários vou precisar fazer uma observação.
- A variável ajuste serve para controlar a leitura da tecla, de forma que seja realizada uma única vez a cada pressionada
- O segundo if() que não tem comentário serve para reiniciar essa varíavel de controle quando a tecla for depressionada, mesmo assim roda única vez.
Mas nos comentários vou precisar fazer uma observação.
- A variável ajuste serve para controlar a leitura da tecla, de forma que seja realizada uma única vez a cada pressionada
- O segundo if() que não tem comentário serve para reiniciar essa varíavel de controle quando a tecla for depressionada, mesmo assim roda única vez.
- Thiaguin
- Mensagens : 177
Data de inscrição : 03/03/2020
Re: Exercício 2.05 Tecla Led Acende Apaga
Ter Ago 04, 2020 4:26 pm
Ok
Re: Exercício 2.05 Tecla Led Acende Apaga
Ter Ago 11, 2020 11:07 pm
─────────────────────░██░▇▆▅▄▃▂
────────────────────░█▓▓█░▇▆▅▄▃▂
───────────────────░█▓▓▓█░▇▆▅▄▃▂
──────────────────░█▓▓▓▓▓█░▇▆▅▄▃▂
─────────────────░█▓▓▓▓▓█░▇▆▅▄▃▂
──────────░░░───░█▓▓▓▓▓▓█░▇▆▅▄▃▂
─────────░███░──░█▓▓▓▓▓█░▇▆▅▄▃▂
───────░██░░░██░█▓▓▓▓▓█░▇▆▅▄▃▂
──────░█░░█░░░░██▓▓▓▓▓█░▇▆▅▄▃▂
────░██░░█░░░░░░█▓▓▓▓█░▇▆▅▄▃▂
───░█░░░█░░░░░░░██▓▓▓█░▇▆▅▄▃▂
──░█░░░░█░░░░░░░░█▓▓▓█░▇▆▅▄▃▂
──░█░░░░░█░░░░░░░░█▓▓▓█░▇▆▅▄▃▂
──░█░░█░░░█░░░░░░░░█▓▓█░▇▆▅▄▃▂
─░█░░░█░░░░██░░░░░░█▓▓█░▇▆▅▄▃▂
─░█░░░░█░░░░░██░░░█▓▓▓█░▇▆▅▄▃▂
─░█░█░░░█░░░░░░███▓▓▓▓█░▇▆▅▄▃▂
░█░░░█░░░██░░░░░█▓▓▓▓▓█░▇▆▅▄▃▂
░█░░░░█░░░░█████▓▓▓▓▓█░▇▆▅▄▃▂
░█░░░░░█░░░░░░░█▓▓▓▓▓█░▇▆▅▄▃▂
░█░█░░░░██░░░░█▓▓▓▓▓█░▇▆▅▄▃▂
─░█░█░░░░░████▓▓▓▓██░▇▆▅▄▃▂
─░█░░█░░░░░░░█▓▓██▓█░▇▆▅▄▃▂
──░█░░██░░░██▓▓█▓▓▓█░▇▆▅▄▃▂
───░██░░███▓▓██▓█▓▓█░▇▆▅▄▃▂
────░██▓▓▓███▓▓▓█▓▓▓█░▇▆▅▄▃▂
──────░█▓▓▓▓▓▓▓▓█▓▓▓█░▇▆▅▄▃▂
──────░█▓▓▓▓▓▓▓▓▓▓▓▓▓█░▇▆▅▄▃▂
────────────────────░█▓▓█░▇▆▅▄▃▂
───────────────────░█▓▓▓█░▇▆▅▄▃▂
──────────────────░█▓▓▓▓▓█░▇▆▅▄▃▂
─────────────────░█▓▓▓▓▓█░▇▆▅▄▃▂
──────────░░░───░█▓▓▓▓▓▓█░▇▆▅▄▃▂
─────────░███░──░█▓▓▓▓▓█░▇▆▅▄▃▂
───────░██░░░██░█▓▓▓▓▓█░▇▆▅▄▃▂
──────░█░░█░░░░██▓▓▓▓▓█░▇▆▅▄▃▂
────░██░░█░░░░░░█▓▓▓▓█░▇▆▅▄▃▂
───░█░░░█░░░░░░░██▓▓▓█░▇▆▅▄▃▂
──░█░░░░█░░░░░░░░█▓▓▓█░▇▆▅▄▃▂
──░█░░░░░█░░░░░░░░█▓▓▓█░▇▆▅▄▃▂
──░█░░█░░░█░░░░░░░░█▓▓█░▇▆▅▄▃▂
─░█░░░█░░░░██░░░░░░█▓▓█░▇▆▅▄▃▂
─░█░░░░█░░░░░██░░░█▓▓▓█░▇▆▅▄▃▂
─░█░█░░░█░░░░░░███▓▓▓▓█░▇▆▅▄▃▂
░█░░░█░░░██░░░░░█▓▓▓▓▓█░▇▆▅▄▃▂
░█░░░░█░░░░█████▓▓▓▓▓█░▇▆▅▄▃▂
░█░░░░░█░░░░░░░█▓▓▓▓▓█░▇▆▅▄▃▂
░█░█░░░░██░░░░█▓▓▓▓▓█░▇▆▅▄▃▂
─░█░█░░░░░████▓▓▓▓██░▇▆▅▄▃▂
─░█░░█░░░░░░░█▓▓██▓█░▇▆▅▄▃▂
──░█░░██░░░██▓▓█▓▓▓█░▇▆▅▄▃▂
───░██░░███▓▓██▓█▓▓█░▇▆▅▄▃▂
────░██▓▓▓███▓▓▓█▓▓▓█░▇▆▅▄▃▂
──────░█▓▓▓▓▓▓▓▓█▓▓▓█░▇▆▅▄▃▂
──────░█▓▓▓▓▓▓▓▓▓▓▓▓▓█░▇▆▅▄▃▂
Permissões neste sub-fórum
Não podes responder a tópicos
|
|