Presentación
Primera parte: ARM Cortex-A con Raspberry Pi (o una introducción práctica a los sistemas embebidos basados en Linux)
Se usará una Raspberry Pi modelo B v2. (Si alguien desea adquirir una, se recomienda la Raspberry Pi 2 modelo B)
Material para esta parte
- Transparencias: Empezar con la Raspberry Pi
- Transparencias: Lo básico en la RPi (lo típico en cualquier sistema Linux)
- Transparencias: C/C++ para la Raspberry (igualito que para cualquier otra cosa)
- Código fuente: Solución actividad válvula + wiringPi
- Transparencias: Qt en la Raspberry (hay que ser productivos)
- Código fuente: Solución actividad Qt + válvula + wiringPi
Segunda parte: introducción a los microcontroladores ARM Cortex-M
- El software de desarrollo será la versión limitada del entorno de desarrollo oficial de Keil MDK-ARM. Se puede descargar gratuitamente previo registro. Está limitada a 32KB, que es más que suficiente para el curso y para proyectos propios.
- Como hardware de práctica, se empleará la placa de evaluación de St STM32F4 Discovery. Se puede comprar por unos 12 Eur. en los distribuidores de material electrónico habituales (Farnell, Digikey, Mouser, …).
Material para las sesiones:
- Manual: Guía de iniciación al kit STM32F4 Discovery
- 1a actividad: Qué tenemos entre manos (leer secciones 1 a 4)
- 2a actividad: La depuración (leer, pero no hacer, la sección 5)
- Hola Mundo (en lenguaje C)
- Biblioteca: «STM32F4DISCOVERY board firmware package v1.1.0» (copia local por si St la actualiza a mitad de curso)
- Código fuente: Plantilla con printf() al servicio ITM debug
- Manual: «St STM32F4x Reference Manual» (copia local)
- Manual: «St STM32F40x Datasheet» (copia local)
- Manual: «CMSIS-CORE support for Cortex-M processor-based devices v 3.01» (copia local)
- Manual: «St STM32F4 DSP and standard peripherals library» (generado a partir del doxygen del código)
- Transparencias: Conceptos básicos desarrollo software para ARM Cortex-M
- Transparencias: Bibliotecas
- Biblioteca: Display GLCD compatible KS0108
- Código fuente: Solución actividad GLCD
- Transparencias: Entrada/salida analógica
- Código fuente: Solución actividad sensor de temperatura
- Código fuente: Solución actividad sensor + GLCD
- Transparencias: Interrupciones STM32F
- Código fuente: Solución actividad interrupción «BusFault»
- Código fuente: Solución actividad interrupción EXTI
- Código fuente: Ejemplo interrupción externa
- Transparencias: Temporización STM32F
- Código fuente: Solución actividad delay() con SysTick
- Código fuente: Ejemplo timer 3
- Transparencias: ¿Y ahora que?
- Enlace a ejemplo de FreeRTOS + Keil + STM32F4 Discovery
- Código fuente: FreeRTOS + parpadeo de un LED para ejercicio
- Código fuente: ejemplo para Ethernet con placa MO-Discovery