Configurar LCD 1.8 inch en Raspberry Pi

July 8, 2019

Esta es la pequeña pantalla LCD de 1.8 pulgadas del fabricante WaveShare que vamos a incorporar a nuestro casco HEIMDALL. El objetivo es poder utilizarla como elemento fundamental de un visor de información que pretendemos fabricar basándonos en este ejemplo basado en Arduino que publicamos hace ya algún tiempo en este mismo blog: "A vueltas con el visor"  

 

 

 

PASO 1 - Preparativos

 

En tu Raspberry Pi, asegúrate de que has hecho el update y el upgrade pertinentes.

 

sudo apt-get update

sudo apt-get upgrade

 

PASO 2 - El manual de usuario y los códigos fuente demo

 

Accede a la web del fabricante de este dispositivo y pulsa sobre el enlace a la Wiki que ponen a tu disposición: https://www.waveshare.com/wiki/1.8inch_LCD_Module

 

Allí vas a poder encontrar todo lo que necesitarás para la instalación y configuración de esta pantalla de 1.8 pulgadas. Fíjate en la sección Resources en la que están a tu disposición tres enlaces:

  • User Manual (Manual de usuario - pdf)

  • Demo Code (Código fuente de demostración para Arduino y Raspberry Pi)

  • Schematics (Esquema interno del dispositivo)

Abre en una nueva pestaña de tu navegador o descarga el manual de usuario en pdf, pues te será muy útil.

 

Accede al código fuente de demostración de "Demo Code" y bájalo en la Raspberry Pi.

 

PASO 3 - Conectando la pantalla a Raspberry Pi

 

En el manual de usuario, sitúate en la página 3. Encontrarás una tabla de conexionado de los pines de la pantalla a los GPIOs de tu Raspberry Pi. 

 

Consejo: Ve con cuidado y asegurate de que conectas correctamente cada cosa en su lugar. Te garantizamos que si lo haces como indica la tabla, funciona.;)


En nuestro caso, lo hemos hecho con una Raspberry Pi 3 Model B.

Aquí tienes la distribución de los GPIOs.

 

 

Cuando lo hayas conectado todo, probablemente vas a ver sólo que la pantalla recibe alimentación eléctrica (3,3 V) pero no muestra ninguna imagen. Esto es normal.

 

PASO 4 - Activando SPI en Raspberry Pi

 

Para que esta pantalla funcione sin utilizar excesivos pines emplea el protocolo SPI y por eso hemos de activarlo a través del comando: sudo raspi-config. 

 

Busca en Interfacing Options la función SPI y actívala. 

 

PASO 5 - Instalación de librerías necesarias (ATENCIÓN A ESTA PARTE)

 

Además de SPI, son necesarias varias librerías para que todo vaya bien.

 

Estas son las librerías:

Para instalarlas, el manual de usuario te envía a la siguiente dirección: 

https://www.waveshare.com/wiki/Libraries_Installation_for_RPi

 

Ojo a este paso, para cada una de ellas has de fijarte bien en que primero deberás descargar a tu Raspberry Pi la librería en su última versión, guárdala en una carpeta creada al efecto. Una vez descargas la librería, entras en la carpeta donde la has descargado y tecleas los comandos que se te indican en el enlace que te acabo de dar más arriba. No obstante, aquí te lo dejo indicado también:

 

Para WiringPi:

a) Descargada la librería en la carpeta.

b) Hacemos ejecutable el fichero "build" con el comando

chmod +x build

 

también podemos hacerlo con

chmod 777 build 

 

c) Ejecutamos el script mediante el comando

./build

 

Para bcm2835:

a) Descargamos la librería en su última versión desde http://www.airspayce.com/mikem/bcm2835/

b) Descomprimimos lo descargado

c) Entramos en la carpeta donde se encuentra y tecleamos lo siguiente para instalar:

 

./configure

make

sudo make check

sudo make install

 

 

 

Para las librerías python:

 

Se necesitan dos librerías RPi.GPIO y spidev. Podrás descargarlas desde los siguientes enlaces

 

https://pypi.python.org/pypi/RPi.GPIO

 

 

https://pypi.python.org/pypi/spidev

 

 

¿Las tienes? Pues bien, sigue ahora las siguientes indicaciones:

 

  1. Instala el paquete python-dev: sudo apt-get install python-dev

  2. Instala el paquete RPi.GPIO. Para ello, accede a la carpeta donde has descargado RPi.GPIO, descomprimelo y teclea lo siguiente para instalar la librería: sudo python setup.py install

  3. Instala ahora la librería smbus (son funciones para la interfaz i2C): sudo apt-get install python-smbus

  4. Instala la librería serial, contiene funciones para la interfaz UART: sudo apt-get install python-serial

  5. Instala la librería spidev (funciones SPI). Para ello, entra en la carpeta donde descargaste el paquete spi, descomprimelo e instala la librería con este comando: sudo python setup.py install

  6. Instala finalmente la librería python-imaging: sudo apt-get install python-imaging

 

 

Bueno, lo más chungo ya  lo estás pasando.

 

PASO 6 - CONFIGURANDO LOS INTERFACES

 

En el enlace de Instalación de librerías, posicionate hacia el final en la parte de 

Configuring the interfaces y sigue las indicaciones para activar las funciones i2C y serial en tu Raspberry Pi.

 

 

PASO 7 - PROBANDO EL CÓDIGO DEMO

 

En la página 4 del Manual de Usuario, en el punto 4. vas a poder seguir las indicaciones para ejecutar el código fuente demo que descargaste al principio en el PASO 2. ¿Recuerdas?

 

Este punto 4 del manual es muy importante completarlo de manera correcta en los subapartados 4.1, 4.2 y 4.3.

 

Te descargaste desde aquí: https://www.waveshare.com/w/upload/4/4f/1.8inch-LCD_Module-Code.7z   un fichero comprimido que se llamaba 1.8inch-LCD_Module-Code.7z  si no lo habías descomprimido en tu Rasbperry Pi, hazlo ahora. (Puede que no dispongas del descompresor de ficheros 7z, puedes instalarte p7zip y descomprimirlo con el comando p7zip -- decompress 1.8inch-LCD_Module-Code.7z)

 

 

Si ya lo has hecho, entra en la carpeta y podrás ir navegando por su interior hasta que encuentres una carpeta llamada RaspberryPi y dentro de ella otras tres (bcm2835, wiringpi y python).

 

Entra en la que se llama python. Allí encontrarás varios archivos (hay una imagen también) y un fichero principal main.py, lánzalo con sudo python main.py

 

Si todo ha ido bien, estarás viendo ahora mismo en tu pantalla LCD de 1.8 pulgadas un pequeño texto y la imagen que había en dicha carpeta.

 

Ahora sólo queda combinar el código python de los ejemplos con tu imaginación y mostrar en esta pantalla la información que estimes oportuna.

 

Existe la posibilidad de reproducir vídeo en este tipo de pantallas, pero eso lo dejamos para un futuro. 

 

Gracias por tu atención y espero que te haya sido útil.

 

 

 

 

 

 

 

 

 

Share on Facebook
Share on Twitter
Please reload

Entradas destacadas

Ponencia en @MALAKABOT 2019

May 20, 2019

1/7
Please reload

Entradas recientes