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

Ir para baixo
lucca senn dallagassa
lucca senn dallagassa
Mensagens : 333
Data de inscrição : 09/03/2020
Idade : 17
Escola : Lindaura Ribeiro Lucas

exercicio 3.02 resolvido Empty exercicio 3.02 resolvido

Sex Jul 30, 2021 9:31 am
/*
* CURSO DE ROBOTICA 2019
*
* Exercicio: 3.2
* Tema: Envia texto que identifica a tecla para o terminal
* Atividade: Usar 3 teclas para enviar texto ao terminal, quando teclar a tecla1 o terminal recebe "tecla1" e assim sucessivamente até a tecla3
* Descrição: Ligar as teclas em entradas digitais PULLUP, e abrir o monitor serial para receber o texto conforme tecla pressionada
* Hardware: ligar as teclas em entradas digitais
* Comandos: Serial.begin(9600); digitalRead();
* Dica1: A configuração da serial usa velocidade padrão de 9600, poderia ser alterado caso necessite maior performance
* Dica2: Na interface do arduino abrir o terminal em ferramentas - Monitor serial ou ctr+shift+M
* Dica3: Enviar para o terminal \n para nova linha ou \r para retorno de carro
* Dica4: O texto entre parenteses no comando Serial.print deve estar entre aspas duplas " "
*/

//DEFINICOES INICIAIS
#define tecla1 3//Definido que o pino 3 irá se chamar tecla1
#define tecla2 5//Definido que o pino 5 irá se chamar tecla2
#define tecla3 6//Definido que o pino 6 irá se chamar tecla3

//DECLARAcAO DE VARIAVEIS GLOBAIS
int tempo=300;//Variável para ser somado ao valor do tempo(0,3 segundos)

//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);//Porta serial inicializada com velocidade de 9600
pinMode(tecla1,INPUT_PULLUP); //programado a tecla como entrada, usando resistor de pull up
pinMode(tecla2,INPUT_PULLUP); //programado a tecla como entrada, usando resistor de pull up
pinMode(tecla3,INPUT_PULLUP); //programado a tecla como entrada, usando resistor de pull up
}

//FUNÇÕES COMPLEMENTARES

//PROGRAMA PRINCIPAL
void loop() {
if(digitalRead(tecla1) == 0){//Se a função for correta, irá acionar o bloco abaixo
Serial.println("tecla1");//A mensagem que esta entre parênteses será enviada para o monitor serial
while(digitalRead(tecla1) == 0);//Essa função irá controlar o envio da mensagem, fazendo que rode apenas uma unica vez
delay(tempo);//O tempo de parada de tempo será terá a duração do valor somado à variável tempo
}
if(digitalRead(tecla2) == 0){//Se a função for correta, irá acionar o bloco abaixo
Serial.println("tecla2");//A mensagem que esta entre parênteses será enviada para o monitor serial
while(digitalRead(tecla2) == 0);//Essa função irá controlar o envio da mensagem, fazendo que rode apenas uma unica vez
delay(tempo);//O tempo de parada de tempo será terá a duração do valor somado à variável tempo
}
if(digitalRead(tecla3) == 0){//Se a função for verdadeira, irá rodar o bloco abaixo
Serial.println("tecla3");//A mensagem entre parênteses será enviada para o monitor serial
while(digitalRead(tecla3) == 0);//Essa função irá controlar o envio da mensagem, fazendo que rode apenas uma unica vez
delay(tempo);//O tempo de parada de tempo será terá a duração do valor atribuído à variável tempo
}
}
BielRibas
BielRibas
Mensagens : 266
Data de inscrição : 27/02/2019
Idade : 18
Escola : Col. Lindaura

exercicio 3.02 resolvido Empty Re: exercicio 3.02 resolvido

Qui Ago 05, 2021 2:06 pm
Está funcionando bem, porém achei alguns dos comentários meio vago quanto a sua função.
Deixo para o professor totalizar a nota
Até isso, 9.0
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5715
Data de inscrição : 11/02/2019
Idade : 53
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

exercicio 3.02 resolvido Empty Re: exercicio 3.02 resolvido

Qua Ago 25, 2021 12:55 am
Como o Gabriel deixou para eu reavaliar, achei que os comentários estão corretos. Muitos descrevem o comando de forma literal e não o contexto do programa.
Como em outros exercícios orientei e não descontei vou seguir o mesmo critério. vou ajustar para 10.0
Conteúdo patrocinado

exercicio 3.02 resolvido Empty Re: exercicio 3.02 resolvido

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