.. note:: Hola, ¡bienvenido a la Comunidad de Entusiastas de SunFounder Raspberry Pi & Arduino & ESP32 en Facebook! Sumérgete más en Raspberry Pi, Arduino y ESP32 con otros entusiastas. **¿Por qué unirse?** - **Soporte experto**: Resuelve problemas post-venta y desafíos técnicos con la ayuda de nuestra comunidad y equipo. - **Aprende y comparte**: Intercambia consejos y tutoriales para mejorar tus habilidades. - **Avances exclusivos**: Obtén acceso anticipado a anuncios de nuevos productos y adelantos. - **Descuentos especiales**: Disfruta de descuentos exclusivos en nuestros productos más recientes. - **Promociones y sorteos festivos**: Participa en sorteos y promociones festivas. 👉 ¿Listo para explorar y crear con nosotros? Haz clic en [|link_sf_facebook|] y únete hoy mismo. .. _1.1.7_py: 1.1.7 I2C LCD1602 ======================= Introducción -------------------- LCD1602 es una pantalla de cristal líquido tipo carácter, que puede mostrar 32 (16*2) caracteres al mismo tiempo. Componentes requeridos ------------------------------- En este proyecto, necesitamos los siguientes componentes. .. image:: ../img/list_i2c_lcd.png Es definitivamente conveniente comprar un kit completo, aquí está el enlace: .. list-table:: :widths: 20 20 20 :header-rows: 1 * - Nombre - ARTÍCULOS EN ESTE KIT - ENLACE * - Kit Raphael - 337 - |link_Raphael_kit| También puedes comprarlos por separado en los enlaces a continuación. .. list-table:: :widths: 30 20 :header-rows: 1 * - INTRODUCCIÓN DEL COMPONENTE - ENLACE DE COMPRA * - :ref:`cpn_gpio_board` - |link_gpio_board_buy| * - :ref:`cpn_breadboard` - |link_breadboard_buy| * - :ref:`cpn_wires` - |link_wires_buy| * - :ref:`cpn_i2c_lcd` - |link_i2clcd1602_buy| Diagrama esquemático -------------------------- ================= ======== Nombre de T-Board physical SDA1 Pin 3 SCL1 Pin 5 ================= ======== .. image:: ../img/schematic_i2c_lcd.png Procedimientos Experimentales -------------------------------- **Paso 1:** Construir el circuito. .. image:: ../img/image96.png **Paso 2**: Configurar I2C (ver :ref:`i2c_config`. Si ya has configurado I2C, omite este paso). **Paso 3:** Cambiar de directorio. .. raw:: html .. code-block:: cd ~/raphael-kit/python/ **Paso 4:** Ejecutar. .. raw:: html .. code-block:: sudo python3 1.1.7_Lcd1602.py Después de ejecutar el código, podrás ver ``Greetings!, From SunFounder`` en la pantalla LCD. .. note:: * Si obtienes el error ``FileNotFoundError: [Errno 2] No such file or directory: '/dev/i2c-1'``, necesitas referirte a :ref:`i2c_config` para habilitar el I2C. * Si obtienes el error ``ModuleNotFoundError: No module named 'smbus2'``, por favor ejecuta ``sudo apt install python3-smbus2``. * Si aparece el error ``OSError: [Errno 121] Remote I/O error``, significa que el módulo está mal cableado o está dañado. * Si el código y el cableado están bien, pero la pantalla LCD aún no muestra contenido, puedes girar el potenciómetro en la parte posterior para aumentar el contraste. **Código** .. note:: Puedes **Modificar/Restablecer/Copiar/Ejecutar/Detener** el código a continuación. Pero antes de eso, necesitas ir a la ruta del código fuente como ``raphael-kit/python``. Después de modificar el código, puedes ejecutarlo directamente para ver el efecto. .. raw:: html .. code-block:: python import LCD1602 import time def setup(): LCD1602.init(0x27, 1) # init(slave address, background light) LCD1602.write(0, 0, 'Greetings!') LCD1602.write(1, 1, 'From SunFounder') time.sleep(2) def destroy(): LCD1602.clear() if __name__ == "__main__": try: setup() except KeyboardInterrupt: destroy() **Explicación del Código** .. code-block:: python import LCD1602 Este archivo es un archivo de código abierto para controlar el I2C LCD1602. Nos permite usar fácilmente el I2C LCD1602. .. code-block:: python LCD1602.init(0x27, 1) La función inicializa el sistema I2C con el símbolo de dispositivo designado. El primer parámetro es la dirección del dispositivo I2C, que puede ser detectada mediante el comando i2cdetect (ver el Apéndice para más detalles). La dirección del I2C LCD1602 es generalmente 0x27. .. code-block:: python LCD1602.write(0, 0, 'Greetings!') Dentro de esta función, 'Greetings!! ' es el carácter que se imprimirá en la Fila 0+1, columna 0+1 del LCD. Ahora puedes ver "Greetings!! From SunFounder" en la pantalla LCD. Foto del Fenómeno -------------------------- .. image:: ../img/image97.jpeg