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
Guilherme Kautzmann
Mensagens : 65
Data de inscrição : 27/02/2024
Escola : Juscelino Kustkech

Exercicio 3.8 Empty Exercicio 3.8

Sáb Ago 17, 2024 9:11 am
/*
* CURSO DE ROBOTICA 2019
*
* 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
* 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 //carrega o displey
#define TecE 2//definido como TecE
#define TecD 3//definido como TecD


//DECLARAcAO DE VARIAVEIS GLOBAIS
LiquidCrystal lcd(12,11,10,9,8,7);//ligações



//INICIALIZAÇÃO DO HARDWARE
void setup() {
lcd.begin(16,2);//inicializa o display
lcd.print("texto");//envia o texto para o dissplay
pinMode(TecE, INPUT_PULLUP);//definida como entrada
pinMode(TecD, INPUT_PULLUP);//definida como entrada

}

//FUNÇÕES COMPLEMENTARES


//PROGRAMA PRINCIPAL
void loop() {
if(!digitalRead(TecD)){//inicia bloco de comando
delay(500);//tempo
lcd.scrollDisplayRight();//função que será integrada na tecla/o texto se mover a direita
while(!digitalRead(TecD)){////integra a função na tecla
lcd.scrollDisplayRight();//função que será integrada na tecla/o texto se mover a direita
delay(300);//dá um tempo


}
}



if(!digitalRead(TecE)){//inicia bloco de comando
lcd.scrollDisplayLeft();//função que será integrada na tecla/o texto se mover a esquerda
delay(500);//Tempo
while(!digitalRead(TecE)){////integra a função na tecla
lcd.scrollDisplayLeft();//função que será integrada na tecla/o texto se mover a esquerda
delay(300);//dá um tempo



}
}

}
Very Happy Shocked Razz Twisted Evil What a Face No tongue @ Like a Star @ heaven Idea Rolling Eyes Embarassed Cool Smile Laughing Wink Arrow Suspect cyclops silent pale clown I love you Neutral Exclamation Evil or Very Mad What a Face Like a Star @ heaven Suspect No @ pirat tongue silent pale alien cat monkey pig rabbit bounce confused affraid Basketball cheers bom drunken Sleep sunny albino cherry santa rendeer farao king queen jocolor scratch study flower afro lol!
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.8 Empty Re: Exercicio 3.8

Ter Set 17, 2024 9:47 pm
muito bom, nota 10.0
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos