Robótica Livre
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Ir para baixo
João Paulo
João Paulo
Mensagens : 61
Data de inscrição : 02/08/2023
Escola : Lindaura

EXERCÌCIO 2.05 RESOLVIDO Empty EXERCÌCIO 2.05 RESOLVIDO

Qua Nov 29, 2023 9:29 am

/*
* 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 3 //define que o led sera ligado no pino 3
#define tecla 2 //define que a tecla sera ligada no pino 2

//DECLARAcAO DE VARIAVEIS
bool estadoled = 0;//renomiei a variavel
bool teclapressionada = 0 ;//renomiei a variavel

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla, INPUT_PULLUP);//define a tecla como entrada analogica
pinMode(led1, OUTPUT);//define o led 1 como saida analogica

}
//PROGRAMA PRINCIPAL
void loop() {
if(digitalRead(tecla) == LOW && teclapressionada == 0){ //0 && 0 = falso, 0 && 1 = falso,1 && 1 = verdadeiro
teclapressionada = 1;//a variavel tacla pressiponada ficara com o valor 1
estadoled = !estadoled ;//a nagaço da variavel estado do led
digitalWrite(led1, estadoled);//vai colocar o valor do led na variavel
}
if(digitalRead(tecla) == HIGH && teclapressionada ==1) { //se a tecla estiver com o valor 0 vai passar para o valor 1
teclapressionada = 0;//quando o valor do led estiver em 1 e a tecla for pressionada vai voltar para 1
}
}
Cool Cool Cool Cool Cool Cool Cool Cool Cool Cool Cool Cool Cool Cool Cool Cool Cool
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5115
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

EXERCÌCIO 2.05 RESOLVIDO Empty Re: EXERCÌCIO 2.05 RESOLVIDO

Sáb maio 04, 2024 9:55 am
Muito bom João , nota 10.0
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos