Buenos dias, me encuentro en un problema al modificar la liberia servo. Lo que busco es reducir la cantidad de ms que tarda en refrescar los servos. Leyendo por ahi vi que para modificar la librería hay que ir a Programa>Añadir fichero>servo>src>servo.h , me la abre en el sketch y la modifico a mi gusto. El tema es una vez modificada a mi gusto y demas, guardo el sketch, pero no se como incluir la librería modificada como tal en otro sketch distinto. ya que si incluyo servo.h los cambios no se hacen presentes. Muchas gracias.
Saludos
El tema es el siguiente:
La librería es una librería estandard, por eso se ubica en un sitio específico, en el caso de mi computadora se ubica en:
/snap/arduino/41/libraries/Servo/src
Lo puedes ubicar en ese lugar, pero te lo desaconsejo, por las siguientes consideraciones:
- Si lo haces tienes una librería propia en el lugar de las estandarizadas
- Cuando actualices tu versión del IDE de Arduino vas a perder tu biblioteca personalizada
- El lugar donde se encuentra no es una carpeta muy cómoda de ubicar, precisamente para que no se acceda por error y se borre el contenido.
La mejor solución, para tu caso, es que tengas tu propia biblioteca personal, incluso cambiarle el nombre y colocarla en la carpeta de tus proyectos personales, yo hasta te recomiendo modificar el nombre, de esa manera no confundirás el uso de una librería estandard con una propia, y cuando la incluyas, usa el código
#include "milibreria.h"
En vez de utilizar
#include <milibreria.h>
La diferencia entre utilizar "" ó utilizar <> es indicar al compilador si debe buscar sólo en la carpeta del proyecto ("") o además en las estandard (<>).
La otra es sustituir la librería estándar por la tuya, y guardarte una copia en otro lugar, y reponerla tras la actualización del IDE.
He estado mirando la librería y tienes otra opción, debido a que son objetos, ¡pura maravilla!
Hereda la clase servo() y sobrescribes la parte que te interesa, usas tu objeto propio y de esa manera si hay actualización oficial del objeto, no pierdes esa mejora
TonyDiana:
He estado mirando la librería y tienes otra opción, debido a que son objetos, ¡pura maravilla!Hereda la clase servo() y sobrescribes la parte que te interesa, usas tu objeto propio y de esa manera si hay actualización oficial del objeto, no pierdes esa mejora
Muchas gracias por tu aporte Tony. Segui los pasos que me recomendaste y pude efectivamente crear una librería modificada de servo, lo único que no entendí es lo de "heredar la clase Servo()", igual guarde la misma en un pendrive pro las dudas, así que no te preocupes que ya lo solucione. Repito, muchas gracias por tu ayuda.
De nada