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

Ir para baixo
gabriel hoepers
gabriel hoepers
Mensagens : 117
Data de inscrição : 02/07/2022
Idade : 12
Escola : lindaura

exercicio 2.14 Empty exercicio 2.14

Ter Ago 01, 2023 9:03 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.14
* Tema: Switch Case
* Atividade: Associar 3 LED a 3 teclas
* Descrição: Quando pressionar a tecla o led correspondente deve acender
* Hardware: Ligar 3 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), Switch Case, break
* 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: Na primeira parte do programa, ler as teclas e guardar um valor correspondente a cada uma delas
* DICA3: Na segunda parte usar switch/case para acionar o led correspondente
* DICA4: Programar uma quarta tecla para apagar todos 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 tecla1 9   //Definido que o pino 9 vai se chamar "tecla1"
#define tecla2 10  //Definido que o pino 10 vai se chamar "tecla2"
#define tecla3 11  //Definido que o pino 11 vai se chamar "tecla3"
#define tecla4 12  //Definido que o pino 12 vai se chamar "tecla4"

//DECLARAcAO DE VARIAVEIS
byte valor = 0; // função byte = 0

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla1,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(tecla2,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(tecla3,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(tecla4,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
Serial.begin(9600);  //abre a porta serial com o valor de 9600
}

//PROGRAMA PRINCIPAL
void loop() {
if(digitalRead(tecla1))valor = 1;  //tecla = 0 mas quando a pressionarmos ira ficar = 1
if(digitalRead(tecla2))valor = 2;  //tecla = 1 mas quando a pressionarmos ira ficar = 2
if(digitalRead(tecla3))valor = 3;  //tecla = 2 mas quando a pressionarmos ira ficar = 3
if(digitalRead(tecla4))valor = 4;  //tecla = 3 mas quando a pressionarmos ira ficar = 4
Serial.println(valor);
switch(valor){
case 1;  //case = 1
digitalWrite(led1, HIGH);  //led1 ligado
break;  //função break
case 2 ;  //função case  = 2
digitalWrite, led1 HIGH);  //led2 ligado
break;  //função break
case 3;  //função case = 3
digitalWrite(led3, HIGH);//led3 ligado
break;  //função break
case 4;  //função case = 4
digitalWrite(led1, LOW);  //led1 desligado
digitalWrite(led2, LOW);  //led2 desligado
digitalWrite(led3, LOW);  //led3 desligado
break;  //função break
}
}


Última edição por gabriel hoepers em Sáb Abr 20, 2024 9:10 am, 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.14 Empty Re: exercicio 2.14

Ter Ago 01, 2023 2:56 pm
Boa Tarde
Nota 70.0
Aguardo Comentar
gabriel hoepers
gabriel hoepers
Mensagens : 117
Data de inscrição : 02/07/2022
Idade : 12
Escola : lindaura

exercicio 2.14 Empty exercicio 2.14

Ter Ago 22, 2023 9:07 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.14
* Tema: Switch Case
* Atividade: Associar 3 LED a 3 teclas
* Descrição: Quando pressionar a tecla o led correspondente deve acender
* Hardware: Ligar 3 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), Switch Case, break
* 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: Na primeira parte do programa, ler as teclas e guardar um valor correspondente a cada uma delas
* DICA3: Na segunda parte usar switch/case para acionar o led correspondente
* DICA4: Programar uma quarta tecla para apagar todos 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 tecla1 9 //Definido que o pino 9 vai se chamar "tecla1"
#define tecla2 10 //Definido que o pino 10 vai se chamar "tecla2"
#define tecla3 11 //Definido que o pino 11 vai se chamar "tecla3"
#define tecla4 12 //Definido que o pino 12 vai se chamar "tecla4"

//DECLARAcAO DE VARIAVEIS
byte valor = 0; // função byte = 0

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla1,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(tecla2,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(tecla3,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(tecla4,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
Serial.begin(9600); //abre a porta serial com o valor de 9600
}

//PROGRAMA PRINCIPAL
void loop() {
if(digitalRead(tecla1))valor = 1; //tecla = 0 mas quando a pressionarmos ira ficar = 1
if(digitalRead(tecla2))valor = 2; //tecla = 1 mas quando a pressionarmos ira ficar = 2
if(digitalRead(tecla3))valor = 3; //tecla = 2 mas quando a pressionarmos ira ficar = 3
if(digitalRead(tecla4))valor = 4; //tecla = 3 mas quando a pressionarmos ira ficar = 4
Serial.println(valor); //manda o valor para a porta serial
switch(valor){ //switch = valor
case 1: //case = 1
digitalWrite(led1, HIGH); //led1 ligado
break; //função break
case 2: //função case = 2
digitalWrite, led1 HIGH); //led2 ligado
break; //função break
case 3: //função case = 3
digitalWrite(led3, HIGH);//led3 ligado
break; //função break
case 4: //função case = 4
digitalWrite(led1, LOW); //led1 desligado
digitalWrite(led2, LOW); //led2 desligado
digitalWrite(led3, LOW); //led3 desligado
break; //função break
}
}
Monica Moreno
Monica Moreno
Mensagens : 685
Data de inscrição : 03/03/2020
Idade : 15
Escola : Colegio Lindaura Ribeiro Lucas

exercicio 2.14 Empty Re: exercicio 2.14

Qui Ago 24, 2023 2:48 pm
Bom Dia Gabriel
Acho que nao e finalmente nao kksksksks
Revise esta linha
digitalWrite, led1 HIGH); //led2 ligado

Nota 70.0
gabriel hoepers
gabriel hoepers
Mensagens : 117
Data de inscrição : 02/07/2022
Idade : 12
Escola : lindaura

exercicio 2.14 Empty exercicio 2.14

Ter Set 12, 2023 8:29 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.14
* Tema: Switch Case
* Atividade: Associar 3 LED a 3 teclas
* Descrição: Quando pressionar a tecla o led correspondente deve acender
* Hardware: Ligar 3 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), Switch Case, break
* 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: Na primeira parte do programa, ler as teclas e guardar um valor correspondente a cada uma delas
* DICA3: Na segunda parte usar switch/case para acionar o led correspondente
* DICA4: Programar uma quarta tecla para apagar todos 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 tecla1 9 //Definido que o pino 9 vai se chamar "tecla1"
#define tecla2 10 //Definido que o pino 10 vai se chamar "tecla2"
#define tecla3 11 //Definido que o pino 11 vai se chamar "tecla3"
#define tecla4 12 //Definido que o pino 12 vai se chamar "tecla4"

//DECLARAcAO DE VARIAVEIS
byte valor = 0; // função byte = 0

//FUNÇÕES COMPLEMENTARES


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla1,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(tecla2,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(tecla3,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(tecla4,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
Serial.begin(9600); //abre a porta serial com o valor de 9600
}

//PROGRAMA PRINCIPAL
void loop() {
if(digitalRead(tecla1))valor = 1; //tecla = 0 mas quando a pressionarmos ira ficar = 1
if(digitalRead(tecla2))valor = 2; //tecla = 1 mas quando a pressionarmos ira ficar = 2
if(digitalRead(tecla3))valor = 3; //tecla = 2 mas quando a pressionarmos ira ficar = 3
if(digitalRead(tecla4))valor = 4; //tecla = 3 mas quando a pressionarmos ira ficar = 4
Serial.println(valor); //manda o valor para a porta serial
switch(valor){ //switch = valor
case 1: //case = 1
digitalWrite(led1, HIGH); //led1 ligado
break; //função break
case 2: //função case = 2
digitalWrite (led2, HIGH); //led2 ligado
break; //função break
case 3: //função case = 3
digitalWrite(led3, HIGH);//led3 ligado
break; //função break
case 4: //função case = 4
digitalWrite(led1, LOW); //led1 desligado
digitalWrite(led2, LOW); //led2 desligado
digitalWrite(led3, LOW); //led3 desligado
break; //função break
}
}
Monica Moreno
Monica Moreno
Mensagens : 685
Data de inscrição : 03/03/2020
Idade : 15
Escola : Colegio Lindaura Ribeiro Lucas

exercicio 2.14 Empty Re: exercicio 2.14

Ter Set 12, 2023 2:25 pm
Oii Gabril Hoepers
Tudo Bem?

Agora Sim
Parabens
Nota 10.0
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.14 Empty Re: exercicio 2.14

Dom Set 24, 2023 8:18 pm
Nota lançada
Conteúdo patrocinado

exercicio 2.14 Empty Re: exercicio 2.14

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