Jul 03 2010

LCD Shield com teclado para Arduino

Antes de postar o projeto ARDUINO+GPS, vou apresentar o LCD Shield com teclado, compatível com arduino.

Isto porque pretendo utiliza-lo para visualizar os dados do GPS.

Link para loja virtual:http://www.webtronico.com/produtos/view/34

Abaixo o vídeo de demonstração:

Continue lendo para ver exemplo de programação no Arduino.

O funcionamento do teclado de 5 botões é bem interessante. Os 5 botões são ligados a resistores divisores de tensão, ou seja, cada botão transmite uma tensão quando pressionado. Sendo assim, os 5 botões são ligados em apenas uma entrada A/D, economizando 5 preciosas I/Os.

Dê uma olhada no esquemático para entender melhor: Esquemático LCD SHIELD

O exemplo abaixo utiliza a biblioteca padrão do Arduino para controlar LCD.

Observe que o exemplo envia pela Serial, o valor correspondente a cada valor pressionado. Para ver os valores basta abrir o Serial Monitor dentro do programa do Arduino

byte pinBotao = 0;
int valorBotao = 0;
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, 4, 5, 6, 7); //RS,E,D4,D5,D6,D7
void setup() {
	Serial.begin(9600);
	Serial.println("inicio");
	lcd.begin(16, 2);
	lcd.print("Webtronico.com");
}
void loop() {
	valorBotao = analogRead(pinBotao);
	//478 esquerda
	//129 up
	//322 down
	//0 right
	//720 selecionado
	if(valorBotao > 470 && valorBotao < 500){
		lcd.setCursor(0, 1);
		lcd.print("ESQUERDA");
	}else if(valorBotao > 120 && valorBotao < 140){
		lcd.setCursor(0, 1);
		lcd.print("CIMA ");
	}else if(valorBotao > 315 && valorBotao < 400){
		lcd.setCursor(0, 1);
		lcd.print("BAIXO ");
	}else if(valorBotao >=0 && valorBotao < 10){
		lcd.setCursor(0, 1);
		lcd.print("DIREITA ");
	}else if(valorBotao > 700 && valorBotao < 730){
		lcd.setCursor(0, 1);
		lcd.print("ENTER ");
	}
	Serial.println(valorBotao);
	delay(100);
}

3 Comments

  • By Oressalpata, March 8, 2011 @ 12:23 pm

    Aprendi muito

  • By Bruno, December 21, 2012 @ 11:55 am

    Olá Juliano. O LCD Shield é compatível com o Arduino Uno R3 ? Obrigado.

  • By admin, January 7, 2013 @ 6:14 pm

    Sim, é compativel com qualquer Arduino.

Other Links to this Post

RSS feed for comments on this post. TrackBack URI

Leave a comment