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

Ir para baixo
Sr.Sucrilhos
Sr.Sucrilhos
Mensagens : 103
Data de inscrição : 30/03/2022
Idade : 12
Escola : São Cristovão

exercicio 2.25 Empty exercicio 2.25

Sáb Ago 05, 2023 9:44 am
/*
* CURSO DE ROBOTICA 2023
*
* Exercicio: 2.25
* Tema: Do WHILE
* Atividade: Associar 3 LED a 3 teclas, quando as 3 estiverem acesas e teclar fim apaga todas
* Descrição: Cada tecla acende um led e não apaga até os 3 leds acesos e uma quarta tecla denomidada fim pressionada
* Hardware: Ligar 4 teclas aos pinos digitais configurados como ENTRADA e 3 leds em outros pinos digitais configurado como SAÍDA
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, !(operador NOT), Do While
* 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
* DICA2: A função DO WHILE executa primeiro os comandos listados e depois compara a igualdade
* DICA3: Usar 3 variáveis para guardar o status dos leds e uma função para escrever os status nos leds, os status são 0 apagado 1 aceso
* DICA4: Reter o fluxo do programa enquanto os 3 leds não estiverem acesos,
* DICA5: Quando os 3 leds estiverem acesos usar um if para testar a quarta tecla e apagar os leds
*/

//DEFINICOES INICIAIS
#define led1 3 //Definido que o pino 3 vai se chamar "led1"
#define led2 4 //Definido que o pino 4 vai se chamar "led2"
#define led3 5 //Definido que o pino 5 vai se chamar "led3"
#define tca1 6 //Definido que o pino 2 vai se chamar "tecla1"
#define tca2 7 //Definido que o pino 13 vai se chamar "tecla2"
#define tca3 8 //Definido que o pino 10 vai se chamar "tecla3"
#define tca4 9 //Definido que o pino 11 vai se chamar "tecla4"

//DECLARAcAO DE VARIAVEIS
bool sl1, sl2, sl3 = 0; //variaveis do staus dos leds


//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tca1,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(tca2,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(tca3,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(tca4,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(led1, OUTPUT); //programado o led como saida
pinMode(led2, OUTPUT); //programado o led como saida
pinMode(led3, OUTPUT); //programado o led como saida
}

//PROGRAMA PRINCIPAL
void loop() {
do{//testa condiçoes do programa
if(!digitalRead(tca1)){//quando a tecla1 for pressionada ira acontecer alguma coisa
sl1 = 1;//defini sl1 vai ser igual a 1 =)
digitalWrite(led1, sl1);//acende o led1 dependendo do estado da variavel sl1
}
if(!digitalRead(tca2)){//quando a tecla2 for pressionada vai acontecer alguma coisa
sl2 = 1;//defini sl2 vai ser igual a 1 =)
digitalWrite(led2, sl2);//acende o led2 dependendo do estado da variavel sl2
}
if(!digitalRead(tca3)){//quando a tecla3 for pressionada vai acontecer alguma coisa
sl3 = 1;//defini sl3 vai ser igual a 1 =)
digitalWrite(led3, sl3);//acende o led3 dependendo do estado da variavel sl3
}
}while((sl1 == 1 && sl2 == 1 && sl3 == 1 && !digitalRead(tca4)) == false);//verifica se todas as variaveis que estão no programa vale 1
sl1 = 0;//sl1 define e vira 0
sl2 = 0;//sl2 define e vira 0
sl3 = 0;//sl3 define e vira 0
digitalWrite(led1, sl1);//acende o led1
digitalWrite(led2, sl2);//acende o led2
digitalWrite(led3, sl3);//acende o led3
}


Última edição por Sr.Sucrilhos em Qua Ago 16, 2023 7:37 pm, editado 1 vez(es)
Monica Moreno
Monica Moreno
Mensagens : 685
Data de inscrição : 03/03/2020
Idade : 15
Escola : Colegio Lindaura Ribeiro Lucas

exercicio 2.25 Empty Re: exercicio 2.25

Seg Ago 14, 2023 9:00 pm
Bom Dia
Aguardo terminar seu exercicio
Sr.Sucrilhos
Sr.Sucrilhos
Mensagens : 103
Data de inscrição : 30/03/2022
Idade : 12
Escola : São Cristovão

exercicio 2.25 Empty Re: exercicio 2.25

Sáb Set 02, 2023 9:13 am
vou ver
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5039
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

exercicio 2.25 Empty Re: exercicio 2.25

Sáb Set 02, 2023 9:21 am
Revisei o programa e funcionou corretamente, muito bom.Nota 10.0
Conteúdo patrocinado

exercicio 2.25 Empty Re: exercicio 2.25

Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos