Microcontroladores ARM Cortex-M






         Blog del curso

21 abril, 2014

Nuevo blog “ARM Power”

Filed under: Sin categoría @ 6:37 pm

Os informamos de que estamos trasladando el contenido al nuevo blog “ARM Power“.

Allí estamos dando cabida a un mayor abanico de opciones.

 

 

 

1 junio, 2013

Cuarta edición del curso “Introducción práctica a los microcontroladores ARM Cortex-M”

Filed under: Cursos @ 11:12 am

cartell_curs_arm_corex_m_4a_ed

 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.

Fechas

Del lunes, 15 de julio, al vienes, 19 de julio. Mañanas de 9:30 a 13:30 horas.

Matrícula

Enlace al CFP para la preinscripción y matrícula.

Los precios fijados por el centro son:

Alumnos UPV: 130,0
Personal UPV: 160,0
Alumni UPV: 160,0
Resto: 200,0

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.

 

13 marzo, 2013

Tercera edición del curso “Introducción práctica a los microcontroladores ARM Cortex-M”

Filed under: Sin categoría @ 7:07 pm

cartell_curs_ARM_3a_ed

Descripción del curso

Los microcontroladores ARM Cortex-M de 32 bits se están convirtiendo en un 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) permiten cubrir un amplísimo rango de necesidades partiendo de una única arquitectura, sin embargo. Por otra parte, 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 y desarrollar 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 (cuesta unos 12 Eur.).

Colaboradores

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

Fechas

Sábados 13 y 20 de abril. Sábados 4, 18 y 25 de mayo. De 9:30 a 13:30 horas.

Matrícula

Enlace al CFP para la preinscripción y matrícula.

Los precios fijados por el centro son:

Alumnos UPV: 130,0
Personal UPV: 160,0
Alumni UPV: 160,0
Resto: 200,0

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.

 

25 noviembre, 2012

Pongo un “float” y mi programa falla en el Cortex-M4

Filed under: Ejemplo práctico @ 6:42 pm

El viernes pasado hubo gente en el curso que probó a realizar operaciones en coma flotante y vio que el programa dejaba de funcionar.

Visto que algunos estáis pensando en hacer filtros, control vectorial, transformadas de Fourier, …, creemos que debéis saber a qué atenerse y sacar partido a las posibilidades de la unidad de coma flotante o FPU (la culpable del fallo).

El problema del otro día fué que el compilador estaba configurado para generar instrucciones máquina pero la FPU no estaba activa. En la siguiente imagen se muestra la opción de Keil que hay que tocar para cambiar esto.

Si hubiésemos desactivado la opción “Use FPU” no habríamos tenido problemas. En ese caso, las operaciones en coma flotante se harían por software, igual que con los Cortex-M3, PICs, 8051s y similares. Cuidado, que no todos los Cortex-M4 tienen FPU.

Nuestra es la decisión de activar o no la FPU. Para que sea fácil, se sugiere editar el archivo de configuración system_stm32f4xx.c y añadir a la función SystemInit() el siguiente fragmento de código (comprueba antes si ya están presentes estas líneas en este fichero)

  /* FPU settings ------------------------------------------------------------*/
  #if (__FPU_PRESENT == 1) && (__FPU_USED == 1)
    SCB->CPACR |= ((3UL << 10*2)|(3UL << 11*2));  /* set CP10 and CP11 Full Access */
  #endif

Así, cualquiera que sea la configuración que se tenga en el compilador, el programa no fallará. Esto deberíamos tenerlo presente siempre que adaptemos programas del M3 o del M4 y añadamos “floats”.

Si la intención es aprovechar la FPU, es muy importante informarse antes sobre sus características para sacarle partido, o lograremos todo lo contrario. Todos los fabricantes de M4F suelen tener  una nota de aplicación al respecto. Si se va a usar el STM32F4xx, se sugiere leer la nota de aplicación sobre el uso de la unidad de coma flotante.

 

21 septiembre, 2012

Segunda edición del curso “Introducción práctica a los microcontroladores ARM Cortex-M”

Filed under: Cursos @ 3:37 pm

Descripción del curso

Los microcontroladores ARM Cortex-M de 32 bits se están convirtiendo en un 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, móviles, sistemas robóticos, UAVs, etc.

Los diferentes ARM Cortex-M (M0+, M3, M4) permiten cubrir un amplísimo rango de necesidades partiendo de una única arquitectura, sin embargo. Por otra parte, 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 y desarrollar 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.

Colaboradores

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

      

Fechas

Viernes día 9, 16, 23, 30 de noviembre de 16:00 a 21:00 horas.

Matrícula

Enlace al CFP para la preinscripción y matrícula.

Los precios fijados por el centro son:

Alumnos UPV: 130,0
Personal UPV:  160,0
Alumni UPV:    160,0
Resto:                  200,0

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, como sensores.
  • 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 (KIT STM32F4 Discovery)

  • 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 (KIT STM32F4 Discovery)

  • Entendiendo un proyecto software con ARM Cortex-M. Configuración del micro, dependencias, pifias típicas, ejemplo.
  • El estándar CMSIS.
  • Uso del asistente para crear un proyecto desde 0.
  • Bibliotecas externas.
  • Entrada/salida analógica. Nociones básicas de conversión A/D, D/A. Subsistema de E/S analógica.

Sesión 3 (KIT STM32F4 Discovery)

  • Interrupciones.
  • Temporizadores y contadores.
  • Buenas prácticas de C para microcontroladores. MISRA-C.

Sesión 4 (KIT STM32F4 Discovery)

  • Toolchain: descripción de sus componentes y archivos relacionados.
  • Depuración sobre ejercicios de sesiones anteriores.

Sesión 5 (KIT LM8962)

  • Aplicaciones avanzadas:
    • Servicios TCP/IP y servidor web para desde a Internet.
    • Ejemplo de acceso desde Internet.
  • Tendencias.
31 julio, 2012

Foro sobre el ARM Cortex-M

Filed under: Sin categoría @ 11:17 pm

Un grupo de alumnos de la primera edición del curso ha creado un foro sobre ARM Cortex-M en español.

Miguel Ángel Pérez, uno de los alumnos, ha sido el responsable de la puesta en marcha de la infraestructura, que pone en valor la idea de que  colaborar es el camino adecuado en esta área.

Enhorabuena por el trabajo.

 

16 julio, 2012

Finalización de la primera edición del curso

Filed under: Cursos @ 12:09 pm

Ya hemos terminado la primera edición del curso.

Teniendo en cuenta la demanda del curso, estábamos preocupados por si no se cumplían vuestras expectativas. Queríamos darle  un enfoque práctico, pero sois vosotros quienes nos tenéis que decir si lo hemos conseguido.

Para nosotros ha sido una experiencia muy gratificante y productiva (estrés aparte). La heterogeneidad del grupo ha permitido que surjan diferentes dudas y puntos de vista. Esperamos que también vosotros os hayáis dado cuenta de que la heterogeneidad de un grupo de trabajo es positiva y tal como os sugerimos, trabajad en grupo siempre que os sea posible.

Ahora es vuestro turno.

Por favor, dadnos caña comentado en esta entrada qué os ha parecido el curso, que quitarías, que pondríais ...

Àngel, Juanvi y Miguel

(El equipo del curso)

P.D. Unas fotos

 

 

12 junio, 2012

Lista de correo electrónico para los interesados en los ARM Cortex-M

Filed under: Sin categoría @ 3:21 pm

Hemos puesto en marcha una lista de distribución de correo electrónico para disponer de un medio donde intercambiar información, experiencias, resolver dudas, etc.
Es un servicio abierto a todo el mundo y no tiene nada que ver con el curso. El único requisito es suscribirse a la lista, pues así se evitan problemas de spam, virus, …

Para hacer la suscripción, ver las instrucciones para suscribirse a la lista de microcontroladores ARM Cortex-M.
Para usarla, basta con enviar un correo a armcortexm@upv.es, una copia de dicho correo llegará a todos los miembros de la lista.

Los correos de la lista se están archivando en “Mail archive“.

 

 

14 mayo, 2012

Curso CFP de Introducción práctica a los microcontroladores ARM Cortex-M

Filed under: Cursos @ 11:26 am

Descripción del curso

Los microcontroladores ARM Cortex-M de 32 bits se están convirtiendo en un 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, móviles, sistemas robóticos, UAVs, etc.

Los diferentes ARM Cortex-M (M0+, M3, M4) permiten cubrir un amplísimo rango de necesidades partiendo una única arquitectura. En este curso se pretende ilustrar los fundamentos de programación de estos microcontroladores, así como desarrollar aplicaciones prácticas que utilicen diversos periféricos, comunicaciones y sensores/actuadores. Para ello, los asistentes dispondrán de todo el material necesario que permita poner en práctica las propuestas.

Colaboradores

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

      

Fechas

Del 9 al 13 de julio de 2012 de 10:00 a 14:00.

Matrícula

Enlace al CFP para la preinscripción y matrícula.

Los precios fijados por el centro son:

Alumnos UPV:        130,0
Personal UPV:        160,0
Miembros Alumni UPV:    160,0 (No es lo mismo que antiguos alumnos).
Resto:            200,0

Si sois del grupo “resto” y habéis sido alumnos de la UPV, mirad si podéis gestionarlo como Alumni UPV. Creemos que es gratis el primer año.

Objetivos del curso

  • Conocer los fundamentos de la programación en C de sistemas empotrados.
  • 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, comunicaciones y sensores.
  • Seleccionar el microcontrolador ARM Cortex-M más adecuado para cada tipo de aplicación.
  • Aprovechar 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 (KIT STM32F4 Discovery)

  • 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 (KIT STM32F4 Discovery)

  • Entendiendo un proyecto software con ARM Cortex-M. Configuración del micro, dependencias, pifias típicas, ejemplo.
  • El estándar CMSIS.
  • Uso del asistente para crear un proyecto desde 0.
  • Bibliotecas externas.
  • Entrada/salida analógica. Nociones básicas de conversión A/D, D/A. Subsistema de E/S analógica.

Sesión 3 (KIT STM32F4 Discovery)

  • Interrupciones.
  • Temporizadores y contadores.
  • Buenas prácticas de C para microcontroladores. MISRA-C.

Sesión 4 (KIT STM32F4 Discovery)

  • Toolchain: descripción de sus componentes y archivos relacionados.
  • Depuración sobre ejercicios de sesiones anteriores.

Sesión 5 (KIT LM8962)

  • Aplicaciones avanzadas:
    • Servicios TCP/IP y servidor web para desde a Internet.
    • Ejemplo de acceso desde Internet.
  • Tendencias.

© 2016 Microcontroladores ARM Cortex-M   Hosted by BLOGS UPV