Las librerías son trozos de código reutilizables hechos por terceros que usamos en nuestro sketch. Esto nos facilita mucho la programación y hace que nuestro programa sea más sencillo de hacer y de entender. En este curso no veremos como hacer o modificar una librería pero debemos ser capaces de buscar una librería, instalarla, aprender a usar cualquier librería y usarla en un sketch.
Las librerías son entre otras cosas colecciones de código que facilitan la interconexión de sensores, pantallas, módulos electrónicos, etc. El entorno de arduino ya incluye algunas librerías de manera que facilita, por ejemplo, mostrar texto en pantallas LCD.
Cuando compramos un sensor o un dispositivo nuevo es importante ver la librería que necesitamos para manejarlos. Por ejemplo:
- DHT22: http://www.arduinolibraries.info/libraries/dht-sensor-library
- TFT screeen: http://www.rinkydinkelectronics.com/library.php?id=51
Existen infinidad de librerías desarrolladas por terceros en internet con sus correspondientes forks, que nos ayudarán a conectar prácticamente cualquier dispositivo a los Arduinos de forma muy sencilla o hacer tareas de programación complejas.
Estructura de una Librería Arduino
Las librerías incluyen los siguientes archivos comprimidos en un archivo ZIP o dentro de un directorio:
- Un archivo .cpp (código de C++). Al menos uno pero puede haber más.
- Un archivo .h o encabezado de C (header), que contiene las propiedades y métodos o funciones de la librería. Cada archivo .cpp tiene su correspondiente archivo .h. Al menos uno pero puede haber más.
- Un archivo Keywords.txt, que contiene las palabras clave que se resaltan en el IDE (opcional).
- Un archivo README.md con información adicional de lo que hace y con instrucciones de como usarla. (opcional)
- Directorio denominado examples con varios sketchs de ejemplo que nos ayudará a entender cómo usar la librería (opcional).
- Adicionalmente puede haber otros archivos menos importantes como el de la licencia y otros.
Instalación de Librerías
Como instalar librerías: http://arduino.cc/en/Guide/Libraries
Hay varios métodos de instalar librerías:
- Desde el gestor de librerías. A partir de la versión 1.6.2 del IDE de Arduino se incorpora el gestor de librerías que facilita el trabajo. Esta herramienta es accesible desde Programa → Incluir Librería → Gestionar Librerías. Desde aquí podemos ver las librerías instaladas, buscar librerías disponibles, instalar librerías y actualizarlas.
Esta herramienta también nos permite gestionar las librerías instaladas manualmente.
Desde C:\Users\nombre_usuario\AppData\Local\Arduino15, podemos ver en formato json el listado de librerías desde el gestor de librerías o desde http://www.arduinolibraries.info/.
- Mediante el IDE de Arduino de forma automática. Admite la instalación desde un fichero zip o desde una carpeta ya descomprimida. Es el método adecuado para aquellas librerías que no están disponibles desde el gestor de librerías.
- Instalación Manual. Descomprimiendo en un directorio la librería y copiandolo en el directorio de librerías. Generalmente es el directorio Mis Documentos – Arduino – libraries. Aquí se guardan las librerías contribuidas por el usuario como lo denomina el IDE.
En caso de instalación manual, es necesario reiniciar el IDE antes de poder utilizar la librería.
Este enlace explica como actualizar una librería: https://github.com/firmata/arduino#updating-firmata-in-the-arduino-ide—arduino-164-and-higher
IMPORTANTE: Un listado de todas las librerías disponibles en el arduino library manager: https://www.arduino.cc/en/Guide/Libraries se puede ver en http://www.arduinolibraries.info/. En esta web se pueden buscar librerías por categoría, tipo, arquitectura o autor. Por ejemplo sobre timing tenemos http://www.arduinolibraries.info/categories/timing
El propio IDE de Arduino ya trae integradas varias librerías, pero además podemos descargar otras e incorporarlas a nuestro IDE y luego usarlas en nuestros programas.
La librerías instaladas por nosotros por cualquiera de los métodos anteriores, se guardan en el directorio indicado desde las preferencias del IDE.
El listado de librerías incluidas en el IDE, tanto las propias como las de terceros, podemos verlo en este enlace y acceder a la documentación de cada una de ellas para saber como usarlas: http://arduino.cc/en/Reference/Libraries. Estas librerías ya están instaladas en el IDE de Arduino y no es necesario instalarlas.
La librerías incluidas en el IDE tienen ejemplos para comprender su uso. Toda la información en: http://www.arduino.cc/en/Tutorial/LibraryExamples
Por ejemplo, la librería para trabajar con pantallas LCD. En este enlace está la documentación para el uso de esta librería así como los métodos que nos facilita para trabajar con este tipo de pantallas: http://arduino.cc/en/Reference/LiquidCrystal
En el Arduino Playground también tenemos un listado mucho más amplio de librerías, ordenadas por categorías: http://playground.arduino.cc/Main/LibraryList
También tenemos información de como interactuar con diferente HW en http://playground.arduino.cc/Main/InterfacingWithHardware y un conjunto de ejemplos y snippets para usar con Arduino en http://playground.arduino.cc/Main/SketchList
Incluir Librerías en Sketch
IMPORTANTE: Para añadir una librería a nuestro proyecto simplemente se añade a nuestro código la palabra clave #include seguido del nombre de la librería.
Esto también se puede hacer desde el IDE en el menú Programa – Incluir Librería y seleccionar la librería que deseamos incluir y está instalada.
Generalmente cada dispositivo que compramos, shield, sensor, actuador, etc… viene con su propia librería que debemos instalar para poder usarlo. Estas librerías podemos verlas, modificarlas o incluso añadir funcionalidades.
A la hora de elegir un elemento de hardware, uno de los argumentos importantes es la librería que nos ofrece el fabricante o la comunidad y su facilidad de uso.
Por ejemplo si compramos una sonda de temperatura y humedad de tipo DHT11 como esta: http://www.adafruit.com/product/386, para usarla necesitaremos su librería correspondiente.
En la web del fabricante o el vendedor deberemos tener disponible la librería y el datasheet del dispositivo, en este caso.
- Librería: https://github.com/adafruit/DHT-sensor-library
- Datasheet: http://www.adafruit.com/datasheets/DHT22.pdf
- O como en este caso la librería está incluida en el gestor de librerías: http://www.arduinolibraries.info/libraries/dht-sensor-library
Pingback: Librerías Arduino | Aprendiendo Arduino
Pingback: Crear Librerías Arduino | Aprendiendo Arduino
Pingback: Saber Más Iniciación Arduino 2017 | Aprendiendo Arduino
Pingback: Saber Más Arduino Empresas | Aprendiendo Arduino
Pingback: Saber Más Iniciación Arduino 2018 | Aprendiendo Arduino
Hola, estoy queriendo aprender Arduino. Compre un Arduino Uno. Necesito hacer un VU meter con 74HC595 para manejar los LEDs. Hay alguien que pueda ayudarme u orientarme,
Saludos. Me email: joaquinespalter@hotmail.com
Me gustaLe gusta a 1 persona
Hola,
Puedes vate un VU meter directamente con Arduino como en este instructable https://www.instructables.com/id/How-to-Make-a-VU-Meter-Using-Arduino/ pero si quiere usar un shift register como 74HC595 debes usar la función shiftout() https://www.arduino.cc/reference/en/language/functions/advanced-io/shiftout/ y puedes encontrar un fantástico tutorial en https://www.arduino.cc/en/Tutorial/ShiftOut
Puedes preguntarme también en aprendiendoarduino@gmail.com
Me gustaMe gusta
Pingback: Arduino en IoT | Aprendiendo Arduino
Pingback: Saber Más Iniciación Arduino 2019 | Aprendiendo Arduino
Pingback: Saber Más Gestión de Proyectos con Arduino | Aprendiendo Arduino
Pingback: Funciones Definidas por Usuario Avanzado | Aprendiendo Arduino
Pingback: Saber Más Programación Arduino 2019 | Aprendiendo Arduino
Pingback: IoT en 90 Minutos | Aprendiendo Arduino
Pingback: Arduino en IoT | Aprendiendo Arduino
excelente pagina¡¡¡….me ha gustado mucho
Me gustaMe gusta
Pingback: Saber Más Fundamentos IoT para Formación Profesional | Aprendiendo Arduino
Pingback: Programación Arduino | Aprendiendo Arduino