Panel de Control (Resumen e Indice)
Este proyecto de panel de control surge con el fin de introducirme y aprender sobre los microcontroladores de 32 bits ARM Cortex-M.A su vez, el panel me servirá para mi otro hobby, la simulación aérea. Con él trato de explorar las herramientas, frameworks e IDEs para esta plataforma que más recomiendan y que están disponibles de forma gratuita.
![]() |
Panel de Control v.3 |
Las características del panel son las siguientes:
- 26 Botones.
- 40 Interruptores de 2 posiciones.
- 21 Interruptores de 3 posiciones.
- 4 Rotatorios.
- 2 Encoders.
- 1 Minijoystick.
- 2 MFDs de 20 botones cada uno.
- 1 Panel LED LCD de 15.1" a modo de monitor.
- Una sola conexión al PC mediante USB.
- Un solo cable de alimentación.
- Posibilidad de usar solamente la parte que incluye el monitor o añadirle una expansión con más interruptores, incluso mientras está en funcionamiento.
- Comunicación con control de errores (CRC 16).
- Protección contra desbordamientos de la pila.
- Reinicio automático en caso de fallo. (Watchdog).
- USB modo HID en RAW. (para no utilizar drivers).
![]() |
Software para PC |
Las características del programa son las siguientes:
- Realiza comprobación de errores (CRC 16) en la comunicación.
- Emula secuencias de teclas mediante scancodes.
- Capturar pulsaciones del teclado y traducirlas a scancodes.
- Crear y modificar perfiles de teclas.
- Cargar automáticamente el último perfil utilizado.
- Informar del estado actual del panel y modo de ejecución.
- Poder probar los perfiles y controles para asegurar su correcto funcionamiento.
- Recuperación de errores mediante reinicio automático de procesos.
- Lectura y envío de informes USB HID.
- Diseño 3D: FreeCad.
- Diseño 2D: Inkscape.
- RTOS: ChibiOS.
- IDE: ChibiStudio 17.
- Libreria USB (para Atmega 16u2): LUFA.
- IDE para desarrollo USB en Atmel 16u2: AtmelStudio 7.
- IDE para desarrollo del programa PC en FreePascal: Lazarus.
- IDE para desarrollo de programa en Python: Pydev.
- IDE oficial de ST para los ARM Cortex: SystemWorkbench.
- Aplicación de ST para disposición de pines, calculo de consumo, configuración de micros y generación automática de código de forma gráfica: CubeMX.
- Para Mbed de forma local se ha utilizado Atom con PlatformIO.
Para más información sobre las distintas etapas del proyecto, pinchar en los siguientes enlaces:
- Panel de Control: Parte 1 (Introducción)
- Panel de Control: Parte 2 (Diseño)
- Panel de Control: Parte 3 (Construcción)
- Panel de Control: Parte 4 (Electrónica)
- Panel de Control: Parte 5 (Firmware)
- Panel de Control: Parte 6 (Software)
- Panel de Control: Parte 7 (Final)
0 comentarios: