Curso «Introducción práctica a los microcontroladores ARM Cortex-M»

cartell_curs_arm_cortex_m

Los microcontroladores ARM Cortex-M de 32 bits se han convertido en el estándar de facto para el desarrollo de sistemas empotrados tales como dispositivos de electrónica de consumo, sistemas de control industrial, redes de sensores, sistemas robóticos, UAVs, etc.

Los diferentes ARM Cortex-M (M0+, M3, M4) son perfectos para cubrir un amplísimo rango de necesidades partiendo de una única arquitectura. Sin embargo, el enfoque profesional de estos microcontroladores y la enorme cantidad de información disponible, hacen muy difícil introducirse por cuenta propia en esta arquitectura.

Este curso pretende «romper la barrera» para ilustrar los fundamentos de programación de estos microcontroladores. Para ello se desarrollarán ejemplos prácticos que utilicen diversos periféricos, sensores/actuadores, lcd, etc.

Para hacerse una idea más concreta del curso, se recomienda acceder al apartado «Material del curso» del blog y hojear el material de la pasada edición.

Quien lo desee, puede venir con su propio equipo microcontrolador indicado en el material del curso (cuesta unos 12 Eur.) y su propio portátil con el software instalado. Pretendemos que la gente pueda echar a volar por su cuenta.

Colaboradores

Venco Electrónica y St colaboran con el material del curso.

Objetivos del curso

  • Conocer los fundamentos de la programación en C de los sistemas empotrados basados en Cortex-M.
  • Desarrollar aplicaciones prácticas sobre un microcontrolador basado en la arquitectura ARM Cortex-M.
  • Utilizar herramientas gratuitas, completas o limitadas, para realizar sus propios desarrollos.
  • Aprender el manejo de periféricos básicos.
  • Seleccionar el microcontrolador ARM Cortex-M más adecuado para cada tipo de aplicación.
  • Entender las ventajas de esta arquitectura sobre arquitecturas clásicas de 8 y 16 bits: PIC, 8051, HC-11 …

Conocimientos previos necesarios

  • Conocimientos básicos de programación en lenguaje C.

Dirigido a

  • Alumnos interesados en el desarrollo de sistemas basados en microcontrolador.
  • Profesionales interesados en conocer o actualizarse a esta arquitectura.

Temas a desarrollar

Sesión 1. “Getting started”

  • Presentación. Modelo de licencia de ARM y razones de su éxito.
  • ”Getting started”. Puesta a punto y prueba de un sistema completo incluyendo instalación y configuración del software, configuración de la placa de evaluación, prueba con un programa ejemplo.
  • Entrada y salida digital. Subsistema de E/S mediante bibliotecas.

Sesión 2. Comprendiendo

  • El estándar CMSIS y bibliotecas de dispositivos del fabricante.
  • Entendiendo un proyecto software con ARM Cortex-M.
  • Entrada/salida analógica. Nociones básicas de conversión A/D, D/A. Subsistema de E/S analógica.

Sesión 3. El fondo

  • Toolchain: descripción de sus componentes.
  • Depuración: conceptos básicos.
  • Buenas prácticas de C para microcontroladores. volatile, static, alineación de datos, mapa de memoria.

Sesión 4. Lo típico: Contadores/temporizadores.Interrupciones

  • Sistema interrupciones.
  • Contadores y temporizadores. Temporizadores. PWM.

Sesión 5. Lo más: Ejemplos avanzados

  • Ejemplo de sistema operativo con FreeRTOS
  • Ejemplo de servicios TCP/IP y servidor web para desde a Internet.
  • Criterios de selección de herramientas y micros.