Estrategia para el mejoramiento de la enseñanza/aprendizaje de microcontroladores usando solamente Arduino® IDE
Authors: Ruge Ruge Ilber Adonayt , Ortiz Álvarez Ingrid Carolina , Sánchez Uriza Edwin Javier 
Published: October 2024

rduino es la plataforma de hardware de código abierto de mayor impacto en los últimos años. Se destaca por la simplicidad de uso, bajo costo y amplia documentación, haciendo de esta plataforma un éxito. Arduino proporciona una de las formas más accesibles de ingeniería, facilitando la programación para control de motores, comunicaciones inalámbricas, aplicaciones IoT, etc. Otro ejemplo de potencial uso es TinyML (Tiny Machine Learning), conocido como un conjunto de técnicas para llevar la inteligencia artificial (IA) a dispositivos de bajo costo y bajo consumo para procesar información y tomar decisiones en el mismo lugar donde se generan los datos. Estos algoritmos de aprendizaje automático se pueden implementar en un microcontrolador con memoria limitada utilizando herramientas como TensorFlow Lite y Edge Impulse, habilitando soluciones soportadas por IA en los sectores de la agricultura, automatización de edificaciones, automatización industrial, cuidado de la salud etc. Sin embargo, algunas investigaciones y experiencias en educación basada en Arduino, muestran que estudiantes participantes de estos cursos además de manifestar interés y motivación por el logro alcanzado, sienten que factores como el diseño y la depuración es difícil. La facilidad de uso del hardware/software de Arduino hace que un estudiante no pueda aprender lo básico de cosas como la arquitectura, interrupciones, comunicación serial, ADC, I2C, etc. Estos aspectos merecen atención, para que las tendencias de uso tecnológico no desvíen los propósitos de formación en Ingeniería (Concebir, Diseñar, Implementar, Operar), pero también no se debe desconocer las bondades de tales plataformas y considerar su empoderamiento como estrategia de fortalecimiento en la formación de ingenieros. Este artículo presenta una estrategia de apoyo al proceso de enseñanza y aprendizaje de Microcontroladores usando solamente software Arduino® IDE, con la idea principal de estudiar y diseñar aplicaciones basadas en la arquitectura de microcontroladores de 8, 16 y 32 bits de la familia Atmel y otras compatibles con Arduino (SAMD21, STM32, EFR32MG24, NodeMCU, ESP32 entre otros). La metodología es aplicada en la actividad curricular Microcontroladores de la Escuela de Ingeniería Electrónica de la Universidad Pedagógica y Tecnológica de Colombia Tunja Boyacá. Las fases de implementación son: a) Arquitectura de microcontroladores de 8 bits, enlace de Atmel Studio con software Arduino®, aplicaciones con lenguaje ensamblador en ATmega328P (manejo de puertos I/O e interrupciones usando AVR Assembler Atmel Studio). b) Arquitectura RISC mejorada (Reduce Instruction Set Computer), aplicaciones avanzadas con lenguaje C en ATmega2560 (Temporizadores, ADC y Comunicación Serial RS232 con AVR C++ Atmel Studio). c) Arquitectura ARM (Advance RISC Machine), aplicaciones complejas con lenguaje Processing (Wiring) en SMART SAM3X8E 32 bits ARM® Cortex®-M3 (Comunicaciones seriales 1wire e i2C con Arduino® IDE). d) Aplicaciones complejas con lenguaje Processing (Wiring) con STM32 ARM® Cortex®-M3 (principios de IoT y TinyML en Arduino® IDE). La estrategia es acompañada con la metodología de aprendizaje basado en proyectos (PBL) y los resultados asociados muestran que la efectividad y la eficiencia del estudiante utilizando Arduino® IDE depende de la complejidad de las aplicaciones y que el manejo de la interface es fácil y cómodo.