Diseñar la interfaz pública de una clase decidiendo qué se expone y qué queda oculto.
Estructurar una librería con cabecera, implementación, ejemplos y fichero de propiedades reconocido por el entorno.
Gestionar la memoria del microcontrolador evitando asignación dinámica y cadenas que fragmentan la RAM.
Escribir ejemplos ejecutables que sirvan a la vez de prueba y de documentación de uso.
Documentar la librería con comentarios estructurados y un manual de uso que otra persona pueda seguir.
Publicar la librería con control de versiones, licencia y notas de cambios entre versiones.
Contenido del curso
7 módulos · 31 clases en vídeo · práctica guiada en cada módulo
Módulo 1 · Por qué una librería4 clases
El coste real del copia y pega
Qué merece convertirse en librería y qué no
Ejemplo de partida: código repetido en varios proyectos
Entorno y repositorio del curso
Módulo 2 · Diseño de la interfaz5 clases
Qué expone la clase y qué se guarda dentro
Constructor, begin y ciclo de vida del objeto
Nombres de métodos que se entienden sin manual
Comunicación de errores y estados
Configuración por parámetros frente a métodos de ajuste
Módulo 3 · Estructura del proyecto4 clases
Cabecera e implementación separadas
Carpeta de ejemplos y de recursos
Fichero de propiedades y palabras clave del entorno
Compilación para varias placas
Módulo 4 · Memoria y eficiencia5 clases
RAM, flash y memoria de programa
Evitar la asignación dinámica en microcontrolador
Cadenas en memoria de programa
Tamaño del objeto y coste de cada método
Medir el impacto de la librería en el proyecto
Módulo 5 · Ejemplos y pruebas4 clases
Ejemplo mínimo y ejemplo completo
Ejemplos como banco de pruebas
Pruebas sin hardware con dobles de prueba
Comprobación de compilación automatizada
Módulo 6 · Documentación4 clases
Comentarios estructurados en la cabecera
Manual de uso y guía de inicio rápido
Diagrama de conexión y requisitos de hardware
Preguntas frecuentes y errores conocidos
Módulo 7 · Publicación y mantenimiento5 clases
Elección de licencia
Versionado y notas de cambios
Publicación en repositorio y en el gestor de librerías
Aceptar contribuciones sin romper compatibilidad
Proyecto de cierre: librería propia publicada
Requisitos
Programación en C++ aplicada a Arduino: clases, constructores, punteros y referencias.
Experiencia previa con periféricos y buses, ya que la librería del curso gobierna hardware real.
Manejo básico de Git y de un repositorio remoto.
Placa Arduino y algún módulo sobre el que construir la librería de ejemplo.
Descripción
En casi todo equipo hay un fichero que viaja de proyecto en proyecto por copia y pega. Cada copia se modifica un poco, los arreglos no vuelven al original y al cabo de un tiempo nadie sabe cuál es la versión buena. El coste no está en escribir el código, sino en mantener cinco variantes divergentes del mismo controlador.
El curso construye una librería real desde el diseño de su interfaz. Se decide qué operaciones expone, qué estado guarda y cómo informa de los errores; se separa cabecera e implementación; se cuida la memoria evitando asignación dinámica y cadenas problemáticas en un microcontrolador; y se añaden ejemplos que compilan y demuestran cada funcionalidad.
El tramo final cubre la documentación, la licencia, el versionado y la publicación en un repositorio, además de cómo aceptar cambios de otras personas sin romper la compatibilidad. Es un curso transversal: mejora cualquier proyecto de Arduino o de ESP32 posterior y es la base para trabajar en equipo sobre el mismo firmware.
¿Para quién es este curso?
Perfiles de desarrollo de firmware que mantienen el mismo controlador duplicado en varios proyectos.
Ingeniería que trabaja en equipo sobre placas propias y necesita código compartido y versionado.
Quien publica hardware propio y quiere entregarlo con una librería que otros puedan usar sin ayuda.
Disponible
Contenido ya grabado y publicado en el campus. Puedes empezar en cuanto te inscribas.
Este sitio web utiliza cookies propias y de terceros para recopilar información con finalidad técnica. No se recaban ni ceden datos de carácter personal sin tu consentimiento. Más información en la política de cookies.