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

Ir para baixo
Gigio
Gigio
Mensagens : 68
Data de inscrição : 09/03/2022
Idade : 16
Escola : Colegio Estadual Professor Lindaura Ribeiro Lucas

Exercício 3.7 Empty Exercício 3.7

Seg Ago 22, 2022 3:15 pm
/*
CURSO DE ROBOTICA 2019

Exercicio: 3.7
Tema: Desloca texto no Display
Atividade: Realizar a instalação do display e enviar o texto sugerido, configurar duas teclas para deslocar o texto para esquerda e direita
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();
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();
*/

//DEFINICOES INICIAIS
#include //Puxa a biblioteca do LCD,
#define Tecla 9 //Define a Tecla como pino 9,
#define Tecla2 10 //Define a Tecla 2 como pino 10,

//DECLARAcAO DE VARIAVEIS GLOBAIS
LiquidCrystal LCD(7, 6, 5, 4, 3, 2); //Define o LCD como os pinos 7, 6, 5, 4,3 e 2,
bool Teclado, Teclado2; //Variáveis bool para controlar as Teclas 1 e 2,
bool Prevent, Prevent2; //Variávels bool para controlar a trava das Teclas 1 e 2,

//INICIALIZAÇÃO DO HARDWARE
void setup() {
LCD.begin(16, 2); //Inicia o LCD,
pinMode(Tecla, INPUT_PULLUP); //Define a Tecla como INPUT_PULLUP,
pinMode(Tecla2, INPUT_PULLUP); //Define a Tecla 2 como INPUT_PULLUP,
LCD.clear(); //Limpa o LCD,
}

//FUNÇÕES COMPLEMENTARES
void Teclas() { //Função para as Teclas:
Teclado = !digitalRead(Tecla); //Teclado é o valor da leitura invertida da Tecla,
Teclado2 = !digitalRead(Tecla2); //Teclado 2 é o valor da leitura invertida da Tecla 2,
}

//PROGRAMA PRINCIPAL
void loop() {
LCD.setCursor(6, 0); //Coloca o cursor (aonde o texto estará) na posição 7 da primeira linha,
LCD.print("Teste"); //Manda "Teste" ao LCD,
Teclas(); //Invoca Teclas(),
if (Teclado == 1 && Prevent == 0) { //Se a Tecla for pressionada e Prevent for igual a 0:
LCD.scrollDisplayLeft(); //Comando para deslizar a tela à esquerda,
Prevent = 1; //Prevent será igual a 1,
}
if (Teclado2 == 1 && Prevent2 == 0) { //Se a Tecla 2 for pressionada e Prevent 2 for igual a 0:
LCD.scrollDisplayRight(); //Comando para deslizar a tecla à direita,
Prevent2 = 1; //Prevent 2 será igual a 1,
}
if (Teclado == 0 && Prevent == 1) { //Se a Tecla estiver depressionada e o valor de Prevent for igual a 1:
Prevent = 0; //Prevent será igual a 0,
}
if (Teclado2 == 0 && Prevent2 == 1) { //Se a Tecla 2 estiver depressionada e o valor de Prevent 2 for igual a 1:
Prevent2 = 0; //Prevent 2 será igual a 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

Exercício 3.7 Empty Re: Exercício 3.7

Seg Ago 29, 2022 8:33 pm
Muito bom Giovanni, nota 10.0
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos