// Programa : Display LCD 20x4 Bluetooth Arduino
// Autor Joaquim Herdy Menezes > Joahermen < 201812
// Arduino - Display
// A4 - SDA
// A5 - SCL
#include // Biblioteca para o Bluetooth
#include // Biblioteca para o Display LCD
#define Rx 8
#define Tx 9
int Mover;
int Colun;
int Linha;
int Contar;
char Tecla;
SoftwareSerial Bluetooth(8,9); // Pino RXD no Pino D9 do Aruino e Pino TXD no Pino D8 do Arduino
LiquidCrystal_I2C lcd(0x3f,20,4); // Set LCD i2C 20x4
void setup()
{ // Define o LCD com 20 colunas e 4 linhas
Bluetooth.begin(9600); // Seta Frequencia para o Bluetooth
pinMode(Tx, OUTPUT); // Seta para Saida Bluetooth
pinMode(Rx, INPUT); // Seta para Entrada Bluetooth
lcd.backlight();
Mensagem();
}
void loop()
{
if(Bluetooth.available()){ // Caso algum Caractere via Bluetooth foi enviado
Tecla = Bluetooth.read(); // Capta o Caractere
if (Tecla == 95){ // ASCii = "_"
lcd.clear();
Colun = 0;
Linha = 0;
}
else if(Tecla == 37){ // ASCii = "%"
Mensagem();
}
else if(Tecla == 35){ // ASCii = "#"
if (Colun > 0){
Colun = Colun - 1;
lcd.setCursor(Colun, Linha); // Seta a Coluna e a Linha
lcd.print(' ');
}
}
else{
lcd.setCursor(Colun, Linha); // Seta a Coluna e a Linha
lcd.print(Tecla); // Escreve o Caractere digitado
delay(10);
Colun = Colun + 1; // Seta para Coluna sequinte
if (Colun > 19){ // Caso a Coluna selecionada seja maior que 19
Colun = 0; // Seta a Coluna para seu inicio que eh 0
Linha = Linha + 1; // Move para a proxima Linha
if (Linha > 3){ // Caso a Linha selecionada seja maior que 3
Linha = 0; // Seta a Linha para seu inicio que eh 0
}
}
}
}
}
void Mensagem(){
lcd.init();
lcd.begin(20, 4); // Mostra informacoes no display
lcd.setCursor(5,0);
lcd.print("Joahermen");
lcd.setCursor(3,1);
lcd.print("Tribo Arduino");
lcd.setCursor(2,2);
lcd.print("www.realjoia.net");
lcd.setCursor(2,3);
lcd.print("Display LCD 20x4");
}
|