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

Ir para baixo
avatar
Rafael123
Mensagens : 83
Data de inscrição : 18/03/2023
Idade : 13
Escola : Lindaura Ribeiro Lucas

Exercício 2.14 Rafael123 Empty Exercício 2.14 Rafael123

Ter Abr 23, 2024 2:28 pm
/*
* 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ÇÕ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
}

//PROGRAMA PRINCIPAL
void loop() {
if(!digitalRead(tecla1))valor = 1;//Quando o tecla1 for clicado ira valer 1
if(!digitalRead(tecla2))valor = 2;//Quando o tecla2 for clicado ira valer 2
if(!digitalRead(tecla3))valor = 3;//Quando o tecla3 for clicado ira valer 3
if(!digitalRead(tecla4))valor = 4;//Quando o tecla4 for clicado ira valer 4
switch(valor){
case 1:
digitalWrite(led1, HIGH);//ascende o led1
break;
case 2:
digitalWrite(led2, HIGH);//ascende o led2
break;
case 3:
digitalWrite(led3, HIGH);//ascende o led3
break;
case 4:
digitalWrite(led1, LOW);//desliga o led1
digitalWrite(led2, LOW);//desliga o led2
digitalWrite(led3, LOW);//desliga o led3
break;
}
}

Monica Moreno
Monica Moreno
Mensagens : 685
Data de inscrição : 03/03/2020
Idade : 15
Escola : Colegio Lindaura Ribeiro Lucas

Exercício 2.14 Rafael123 Empty Re: Exercício 2.14 Rafael123

Qua Abr 24, 2024 3:39 pm
Boa Tarde Rafael
Tudo Bem?

Nota 70.0

Falta comentar
avatar
Rafael123
Mensagens : 83
Data de inscrição : 18/03/2023
Idade : 13
Escola : Lindaura Ribeiro Lucas

Exercício 2.14 Rafael123 Empty CORREÇÃO Exercício 2.14 Rafael123

Qui Abr 25, 2024 1:08 pm
/*
* 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ÇÕ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
}

//PROGRAMA PRINCIPAL
void loop() {
if(!digitalRead(tecla1))valor = 1;//Quando o tecla1 for clicado ira valer 1
if(!digitalRead(tecla2))valor = 2;//Quando o tecla2 for clicado ira valer 2
if(!digitalRead(tecla3))valor = 3;//Quando o tecla3 for clicado ira valer 3
if(!digitalRead(tecla4))valor = 4;//Quando o tecla4 for clicado ira valer 4
switch(valor){
case 1:
digitalWrite(led1, HIGH);//ascende o led1
break;//interrompe o Switch Case 1
case 2:
digitalWrite(led2, HIGH);//ascende o led2
break;//interrompe o Switch Case 2
case 3:
digitalWrite(led3, HIGH);//ascende o led3
break;//interrompe o Switch Case 3
case 4:
digitalWrite(led1, LOW);//desliga o led1
digitalWrite(led2, LOW);//desliga o led2
digitalWrite(led3, LOW);//desliga o led3
break;//interrompe o Switch Case //interrompe o Switch Case 14
}
}

Monica Moreno
Monica Moreno
Mensagens : 685
Data de inscrição : 03/03/2020
Idade : 15
Escola : Colegio Lindaura Ribeiro Lucas

Exercício 2.14 Rafael123 Empty Re: Exercício 2.14 Rafael123

Seg Abr 29, 2024 3:19 pm
Boa Tarde Rafael, até o case comenta , nota 80.0
avatar
Rafael123
Mensagens : 83
Data de inscrição : 18/03/2023
Idade : 13
Escola : Lindaura Ribeiro Lucas

Exercício 2.14 Rafael123 Empty CORREÇÃO Exercício 2.14 Rafael123

Ter Abr 30, 2024 1:31 pm
/*
* 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ÇÕ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
}

//PROGRAMA PRINCIPAL
void loop() {
if(!digitalRead(tecla1))valor = 1;//Quando o tecla1 for clicado ira valer 1
if(!digitalRead(tecla2))valor = 2;//Quando o tecla2 for clicado ira valer 2
if(!digitalRead(tecla3))valor = 3;//Quando o tecla3 for clicado ira valer 3
if(!digitalRead(tecla4))valor = 4;//Quando o tecla4 for clicado ira valer 4
switch(valor){
case 1://estrutura switch case1, o led1 vai passar nessa estrutura e ira rodar o led1, e o break vai interromper
digitalWrite(led1, HIGH);//ascende o led1
break;//interrompe o Switch Case 1
case 2://estrutura switch case2, o led2 vai passar nessa estrutura e ira rodar o led2, e o break vai interromper
digitalWrite(led2, HIGH);//ascende o led2
break;//interrompe o Switch Case 2
case 3://estrutura switch case3, o led3 vai passar nessa estrutura e ira rodar o led3, e o break vai interromper
digitalWrite(led3, HIGH);//ascende o led3
break;//interrompe o Switch Case 3
case 4://estrutura switch case4, o led4 vai passar nessa estrutura e ira rodar o led4, e o break vai interromper
digitalWrite(led1, LOW);//desliga o led1
digitalWrite(led2, LOW);//desliga o led2
digitalWrite(led3, LOW);//desliga o led3
break;//interrompe o Switch Case //interrompe o Switch Case 4
}
}
Monica Moreno
Monica Moreno
Mensagens : 685
Data de inscrição : 03/03/2020
Idade : 15
Escola : Colegio Lindaura Ribeiro Lucas

Exercício 2.14 Rafael123 Empty Re: Exercício 2.14 Rafael123

Ter Abr 30, 2024 8:04 pm
Boa Noite, agora sim Nota 10.0
Conteúdo patrocinado

Exercício 2.14 Rafael123 Empty Re: Exercício 2.14 Rafael123

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