Instalación Lcd PC1602F en RasberryPI

Existen varias formas de conectar una Lcd PC1602F en la Rasberrypi de manera más optima como por ejemplo con el método de I2C que explicaré en otro artículo con más calma. Este método es realmente sencillo a la par de práctico donde podremos observar y comprender el funcionamiento de los puertos GPIO de nuestro juguetito… así como una introducción al lenguaje de programación Python!

Montando un LCD PC1602F-B en una Raspberry Pi
Montando un LCD PC1602F-B en una Raspberry Pi

Conectando el Lcd PC1602F en Rasberrypi

Antes de empezar

Tenemos que tener claro que este artículo describe una forma diferente de conexión de un LCD de 16×2 a nuestra Raspberry Pi debido a que el modelo que utilizo de pantalla tiene los pines 15 y 16 al principio del tramo por lo tanto el esquema varia…

Normalmente se utilizará una resistencia variable para regular el contraste, no obstante yo no la utilizaré ya que Raspberry Pi no es capaz de alimentar el LCD a plena potencia y por lo tanto los niveles de contraste y luz no son elevados ni necesitan regulación alguna.

Material necesario

  • LCD 16×2 con controlador hitachi HD44780.
  • Raspberry Pi ( tipo B ).
  • Protoboard.
  • Cables de conexión.
  • Raspberry Pi board connect.

a) Esquema visual

Podemos observar la Raspberri Pi y justo debajo la protoboard! el color de los cables es indiferente… más adelante podemos ver un esquema relacional de los pines que se utilizarán y donde irán conectados.

Conexión de cables del LCD al Rasberry PI
Conexión de cables del LCD al Rasberry PI

En la imagen podemos ver como he utilizado dos cables amarillos… sencillamente, me he quedado sin colores! los cables rojos ( positivo ) y negros ( negativos ) indican eso… y el cable blanco ( negativo ) está es el contraste del LCD! que va conectado directamente a negativo.

b) Esquema electrónico

A continuación podemos ver el esquema electrónico donde por un lado tenemos los pines GPIO de nuestra Raspberry Pi y por el otro el PC1602F-B relacionados…

Instalación Lcd PC1602F en RasberryPI
Esquema de conexión del LCD16x2 al GPIO de la rasberry PI

En lo único que se tiene que prestar atención es en las conexiones que contienen el positivo y el negativo que alimentan el LCD!

Paquetes necesarios

El control de los puertos GPIO lo vamos a realizar por medio de Python.. y por lo tanto necesitaremos su entorno de desarrollo para que funcione el código fuente que más tarde expondré… sudo apt-get install python-dev python-pip python-setuptools git.

sudo apt-get install python-dev python-pip python-setuptools git

Una vez tenemos los paquetes instalados en nuestra distribución… instalaremos el control de GPIO de la siguiente forma… sudo easy_install -U distribute sudo pip install rpi.gpio –upgrade.

sudo easy_install -U distributesudo pip install rpi.gpio --upgrade

Ahora lo tendríamos que tener todo listo para que nuestro código funcione sin problemas…

Código fuente

El código ha sido extraído de Adafruit.

Para empezar, primero lo descargaremos…

git clone https://github.com/Adafruit_Python_CharLCD-master

Y ahora accederemos al directorio… cd Adafruit_Python_CharLCD-master/

cd adafruit_python_charLCD-master/adafruit_charLCD

Y podemos ver que tiene el siguiente contenido: root@raspberrypi:/home/pi/adafruit_python_charLCD-master/adafruit_charLCD

Funcionamiento

#!/usr/bin/python

from rpi_CharLCD import rpi_CharLCD
from subprocess import *
from time import sleep, strftime
from datetime import datetime

lcd = rpi_CharLCD()
lcd.begin(16,2)

def run_cmd(cmd):
             p = Popen(cmd, shell=True, stdout=PIPE)
             output = p.communicate()[0]
             return output

while 1:
             lcd.clear()
             lcd.message('Hello moto!\n')
             lcd.message('Funciona!! funciona!!')
             sleep(2)

Como podemos ver es un sencillo script que realiza una llamada a la librería de «rpi_CharLCD.py» y que más tarde realiza un búcle (while) donde envía el mensaje cada dos segundos (sleep(2)).

Utilizando la función «lcd.message» enviamos el mensaje a nuestro LCD, así mismo utilizando «lcd.clear()» limpiamos la pantalla.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies