martes, 3 de enero de 2017

Mensaje "Hello world" en un visualizador LCD con Arduino y feliz año nuevo

Aprovecho para felicitar el año nuevo. Hace unos días, hice una práctica de electrónica con un kit arduino comprado a la web http://www.elegoo.com/ a través del portal Amazon. Este kit viene con una placa compatible con Arduino, una serie de piezas relacionadas con la electrónica, cables, etc y un CD de instalación y un manual de instrucciones en PDF. He felicitado el año nuevo con un visualizador LCD y he sustituido el famoso mensaje "Hello World" por un "Feliz 2017". El español es un idioma problemático algunos caracteres no son reconocidos como la exclamación inicial o la famosa letra "ñ". Les dejo las instrucciones del fabricante del kit para que ustedes hagan la prueba:

En esta lección, usted aprenderá cómo conectar y utilizar un visualizador LCD alfanumérico. La pantalla tiene una luz de fondo LED y puede mostrar dos filas con un máximo de 16 caracteres en cada fila. Se puede ver los recuadros para cada símbolo alfanumérico en el visualizador y los píxeles que componen cada carácter. El visualizador es sólo blanco sobre azul y está destinado a mostrar el texto.

En esta lección, vamos a ejecutar el programa de ejemplo para la biblioteca de Arduino LCD, pero en la siguiente Lección, obtendremos nuestro visualizador para mostrar el nivel de temperatura y la luz, el uso de sensores.

Componentes Requeridos

(1) Elegoo UNO R3 (una placa compatible con Arduino)
(1) LCD1602 visualizador
(1) Potenciómetro
(1) Placa Universal
(16) F-M alambres

Introducción de Componente

LCD1602:
VSS: Un perno que conecta a tierra
VDD: Un perno que se conecta a una fuente de alimentación de + 5V
VO: Un perno que ajustar el contraste de LCD 1602
RS: Un perno de selección de registro que controla el lugar de la memoria de LCD en el que se está
escribiendo datos. Puede seleccionar el registro de datos, que contiene lo que sucede en la pantalla, o un registro de instrucción, que es donde el controlador de la pantalla LCD se ve para obtener instrucciones sobre qué hacer a continuación.
R/W: Un perno de lectura / escritura que selecciona el modo de lectura o de escritura
E: Un perno que permite que, cuando se suministra con energía de bajo nivel, hace que el módulo de LDC para ejecutar las instrucciones pertinentes.
D0-D7:Pernos que leen y escriben datos
A y K: Pernos que controlan la luz de fondo LED


El visualizador LCD necesita seis pernos de Arduino, todo listo para ser salidas digitales. También necesita conexiones 5V y GND. Hay un número de conexiones a realizar. La alineación del visualizador con la parte superior de la placa universal ayuda a identificar sus patas sin demasiada complicación, sobre todo si la placa universal tiene sus filas numeradas con la fila 1 como la fila superior de la placa. No se olvide, el largo cable amarillo que une el control deslizante de la olla al perno 3 del visualizador. La "olla 'se utiliza para controlar el contraste del visualizador. Usted puede encontrar que su visualizador se suministra sin pernos del cabezal que se le atribuye. Si es así , siga las instrucciones de la sección siguiente


Código

/*
  LiquidCrystal Library - Hello World

 Demonstrates the use a 16x2 LCD display.  The LiquidCrystal
 library works with all LCD displays that are compatible with the
 Hitachi HD44780 driver. There are many of them out there, and you
 can usually tell them by the 16-pin interface.

 This sketch prints "Hello World!" to the LCD
 and shows the time.

  The circuit:
 * LCD RS pin to digital pin 7
 * LCD Enable pin to digital pin 8
 * LCD D4 pin to digital pin 9
 * LCD D5 pin to digital pin 10
 * LCD D6 pin to digital pin 11
 * LCD D7 pin to digital pin 12
 * LCD R/W pin to ground
 * LCD VSS pin to ground
 * LCD VCC pin to 5V
 * 10K resistor:
 * ends to +5V and ground
 * wiper to LCD VO pin (pin 3)

 Library originally added 18 Apr 2008
 by David A. Mellis
 library modified 5 Jul 2009
 by Limor Fried (http://www.ladyada.net)
 example added 9 Jul 2009
 by Tom Igoe
 modified 22 Nov 2010
 by Tom Igoe

 This example code is in the public domain.

 http://www.arduino.cc/en/Tutorial/LiquidCrystal
 */

// include the library code:
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

void setup() {
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("hello, world!");
}

void loop() {
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 1);
  // print the number of seconds since reset:
  lcd.print(millis() / 1000);
}

Lo único que tiene que hacer es copiar este código que está en cursiva, guardarlo, escribir un nombre para el archivo de extensión .ino, verificar y subir a la placa de Arduino. Es imprescindible tener instalada la librería LiquidCrystal. Acuda a "Programa" - > "Incluir librería" -> "Gestor de librerías" - > "Filtre su búsqueda" y escriba el nombre de la librería y haga una búsqueda, proceda a su instalación. En mi caso, tuve que instalarla de este modo.