- Monica Moreno
- Mensagens : 744
Data de inscrição : 03/03/2020
Idade : 15
Escola : Colegio Lindaura Ribeiro Lucas
Exercício 3.8 Resolvido
Qua Set 29, 2021 10:20 am
/*
* CURSO DE ROBOTICA 2021
*
* Exercicio: 3.8
* Tema: Desloca texto no terminal plus
* Atividade: Com o texto no display, configurar duas teclas para deslocar o texto para esquerda e direita, porém se manter pressionada a tecla o texto desloca a cada 300ms
* Descrição: Os pinos do display são RS-EN-D4-D5-D6-D7 e serão ligados nos pinos digitais do arduino
* Hardware: Ligar da seguinte forma: RS=_pino D12; EN=_pino D13; D4=_pino D4; D5=_pino D5; D6=_pino D6; D7=_pino D7, as teclas serão ligados em pinos digitais
* Comandos: LiquidCrystal(12,13,4,5,6,7); lcd.scrollDisplayLeft(); lcd.scrollDisplayRight(); do while();
* Dica1: Será necessário a biblioteca com as funções do LCD, #include _LiquidCrystal.h_
* Dica2: O comando LiquidCrystal(12,13,4,5,6,7); deve ser declarado como variável antes da função setup()
* Dica3: Na função setup() é necessario inicializar o display indicando as colunas e linhas do display lcd.begin(16, 2);
* Dica4: Detectar qual tecla foi pressionada e deslocar o texto usando as funções lcd.scrollDisplayLeft(); lcd.scrollDisplayRight();
* Dica5: Usar uma variavel tipo int para armazenar o temporizador para deslocamento enquanto a tecla pressionada
* Dica6: O tempo de pressionar a tecla antes de iniciar o deslocamento, vamos chamar de tempo de detecção
* Dica7: O tempo do deslocamento é o intervalo entre cada salto que o texto vai dar no display
* Dica8: O tempo de detecção deve ser maior que o tempo de deslocamento
*/
//DEFINICOES INICIAIS
#include //Sera carregada as funções do display na biblioteca
#define TeclaR 3//Definido que o pino 3 irá se chamar "TeclaR"
#define TeclaL 5//Definido que o pino 5 irá se chamar "TeclaL"
//DECLARAcAO DE VARIAVEIS GLOBAIS
LiquidCrystal lcd(12,11,10,9,8,7);//No caso os pinos seão ligados nessa sequencia do display
//INICIALIZAÇÃO DO HARDWARE
void setup(){
lcd.begin(16,2);//O Display sera inicializado,o display usado possui 16 colunas e 2 linha
lcd.print("yo hablo español");//A mensagem entre aspas será enviada para o display
pinMode(TeclaR,INPUT_PULLUP); //Programado o pino 3 como entrada utilizando um resistor de pullup
pinMode(TeclaL,INPUT_PULLUP);//Programado o pino 5 como entrada utilizando um resistor de pullup
}
//FUNÇÕES COMPLEMENTARES
//PROGRAMA PRINCIPAL
void loop() {
if(!digitalRead(TeclaR)){//No caso da TeclaR for pressionada,o programa vai rodar o bloco abaixo
lcd.scrollDisplayRight();//Ali a mensagem escrita no Display vai se mover para a direita
delay(500);//Tempo
while(!digitalRead(TeclaR)){//Enquanto a TeclaR estiver pressionada o programa irá rodar este bloco, fazendo com que o texto continue indo para a direita, até que a TeclaR seja solta
lcd.scrollDisplayRight();//Ali a mensagem escrita no Display vai se mover para a direita
delay(300);//Tempo
}
}
if(!digitalRead(TeclaL)){//No caso da TeclaL for pressionada,o programa vai rodar o bloco abaixo
lcd.scrollDisplayLeft();//Ali a mensagem escrita no Display vai se mover para a esquerda
delay(500);//Tempo
while(!digitalRead(TeclaL)){//Enquanto a TeclaL estiver pressionada o programa irá rodar este bloco, fazendo com que o texto continue indo para a esquerda, até que a TeclaL seja solta
lcd.scrollDisplayLeft();//Ali a mensagem escrita no Display vai se mover para a esquerda
delay(300);//Tempo
}
}
}
Exercicio 3.8 Feito
* CURSO DE ROBOTICA 2021
*
* Exercicio: 3.8
* Tema: Desloca texto no terminal plus
* Atividade: Com o texto no display, configurar duas teclas para deslocar o texto para esquerda e direita, porém se manter pressionada a tecla o texto desloca a cada 300ms
* Descrição: Os pinos do display são RS-EN-D4-D5-D6-D7 e serão ligados nos pinos digitais do arduino
* Hardware: Ligar da seguinte forma: RS=_pino D12; EN=_pino D13; D4=_pino D4; D5=_pino D5; D6=_pino D6; D7=_pino D7, as teclas serão ligados em pinos digitais
* Comandos: LiquidCrystal(12,13,4,5,6,7); lcd.scrollDisplayLeft(); lcd.scrollDisplayRight(); do while();
* Dica1: Será necessário a biblioteca com as funções do LCD, #include _LiquidCrystal.h_
* Dica2: O comando LiquidCrystal(12,13,4,5,6,7); deve ser declarado como variável antes da função setup()
* Dica3: Na função setup() é necessario inicializar o display indicando as colunas e linhas do display lcd.begin(16, 2);
* Dica4: Detectar qual tecla foi pressionada e deslocar o texto usando as funções lcd.scrollDisplayLeft(); lcd.scrollDisplayRight();
* Dica5: Usar uma variavel tipo int para armazenar o temporizador para deslocamento enquanto a tecla pressionada
* Dica6: O tempo de pressionar a tecla antes de iniciar o deslocamento, vamos chamar de tempo de detecção
* Dica7: O tempo do deslocamento é o intervalo entre cada salto que o texto vai dar no display
* Dica8: O tempo de detecção deve ser maior que o tempo de deslocamento
*/
//DEFINICOES INICIAIS
#include //Sera carregada as funções do display na biblioteca
#define TeclaR 3//Definido que o pino 3 irá se chamar "TeclaR"
#define TeclaL 5//Definido que o pino 5 irá se chamar "TeclaL"
//DECLARAcAO DE VARIAVEIS GLOBAIS
LiquidCrystal lcd(12,11,10,9,8,7);//No caso os pinos seão ligados nessa sequencia do display
//INICIALIZAÇÃO DO HARDWARE
void setup(){
lcd.begin(16,2);//O Display sera inicializado,o display usado possui 16 colunas e 2 linha
lcd.print("yo hablo español");//A mensagem entre aspas será enviada para o display
pinMode(TeclaR,INPUT_PULLUP); //Programado o pino 3 como entrada utilizando um resistor de pullup
pinMode(TeclaL,INPUT_PULLUP);//Programado o pino 5 como entrada utilizando um resistor de pullup
}
//FUNÇÕES COMPLEMENTARES
//PROGRAMA PRINCIPAL
void loop() {
if(!digitalRead(TeclaR)){//No caso da TeclaR for pressionada,o programa vai rodar o bloco abaixo
lcd.scrollDisplayRight();//Ali a mensagem escrita no Display vai se mover para a direita
delay(500);//Tempo
while(!digitalRead(TeclaR)){//Enquanto a TeclaR estiver pressionada o programa irá rodar este bloco, fazendo com que o texto continue indo para a direita, até que a TeclaR seja solta
lcd.scrollDisplayRight();//Ali a mensagem escrita no Display vai se mover para a direita
delay(300);//Tempo
}
}
if(!digitalRead(TeclaL)){//No caso da TeclaL for pressionada,o programa vai rodar o bloco abaixo
lcd.scrollDisplayLeft();//Ali a mensagem escrita no Display vai se mover para a esquerda
delay(500);//Tempo
while(!digitalRead(TeclaL)){//Enquanto a TeclaL estiver pressionada o programa irá rodar este bloco, fazendo com que o texto continue indo para a esquerda, até que a TeclaL seja solta
lcd.scrollDisplayLeft();//Ali a mensagem escrita no Display vai se mover para a esquerda
delay(300);//Tempo
}
}
}
Exercicio 3.8 Feito
- alvaro 123456
- Mensagens : 481
Data de inscrição : 27/04/2019
Idade : 18
Re: Exercício 3.8 Resolvido
Ter Out 26, 2021 8:28 pm
Oi
Monica Parabéns
nota: 10.0
Peço que comece a testar os exercícios
Monica Parabéns
nota: 10.0
Peço que comece a testar os exercícios
Permissões neste sub-fórum
Não podes responder a tópicos