Cómo importar rápidamente un proyecto STM32CubeMX dentro de un proyecto Eclipse

Cómo importar rápidamente un proyecto STM32CubeMX dentro de un proyecto Eclipse

He implementado una forma más rápida de importar automáticamente el proyecto CubeMX en una cadena de herramientas Eclipse basada en el complemento GNU ARM, como se describe en este blog y en mi libro .

He implementado un script en Python que simplemente “traduce” un proyecto CubeMX para la cadena de herramientas SW4STM32 (también conocido como AC6) en un proyecto generado con el complemento GNU ARM. El script se puede descargar desde mi cuenta github . Vamos a ver cómo funciona esto.

En primer lugar, tenemos que generar un nuevo proyecto Eclipse usando el complemento GNU ARM. Vaya a  Archivo-> Nuevo-> Proyecto C y seleccione “Hello World ARM Cortex-M C / C ++ proyecto. Puede elegir el nombre del proyecto que desee. Haga clic en” Siguiente “. Aquí asumimos” prueba1 “como nombre del proyecto Eclipse.

Pantalla 2015-06-04 al 08.11.57
Pantalla 2015-06-04 al 08.14.12

En el siguiente paso tienes que configurar tu microcontrolador. Por ejemplo, para un STM32-F4 tiene que elegir el núcleo Cortex-M4, mientras que para un STM32-F0 tiene que elegir Cortex-M0. El reloj, el tamaño del flash y los parámetros de la RAM dependen de su MCU. Para un STM32F401RE puede usar los mismos valores que se muestran en la siguiente imagen. Configure las otras opciones como se muestra a continuación .

Si está utilizando un Nucleo, esta tabla extraída de mi libro muestra los valores correctos para todas las placas Nucleo.

ch4-table-nucleo-specs
Captura de pantalla 2015-06-04 en 08.24.02

En el siguiente paso, deje todos los parámetros sin cambios, excepto el último: Nombre CMSIS del proveedor . Cámbielo de DEVICE a stm32f4xx si tiene una tarjeta basada en STM32F4, o stm32f1xx para las tarjetas F1, y así sucesivamente. Por favor, asegúrese de usar este patrón, de lo contrario el script simplemente no funciona .Haga clic en ” Siguiente “. Puedes dejar los parámetros por defecto en los siguientes pasos. Después de un tiempo, Eclipse generará un nuevo proyecto para ti. Ahora, haga clic en la raíz del proyecto en la   vistaExplorador de proyectos y haga clic en la entrada “Cerrar proyecto”. 

LEER MAS  Los circuitos integrados proporcionan circuitos convertidores PoE de hasta 71 W

Ahora, use la herramienta CubeMX para configurar su MCU según sus necesidades. Cuando haya terminado, haga clic en el menú Proyecto-> Generar código . En el cuadro de diálogo Configuración del proyecto, asigne el nombre que desea al proyecto y seleccione un directorio de salida donde almacenar el proyecto. Aquí asumimos que el nombre del proyecto CubeMX es ” mymcu “. Elija SW4STM32 como Toolchain / IDE ( esto es muy importante, no omita este paso ) y genere el código.

Finalmente, para usar la herramienta que he creado, puede escribir fácilmente el siguiente comando en el indicador de terminal:

1$ python cubemximporter.py <path-to-eclipse-workspace>/test1 <path-to-cubemx-out>/mymcu

Cuando termine, abra el proyecto “test1” en Eclipse, haga clic con el botón derecho del ratón en la raíz del proyecto y elija “Actualizar” (esto forzará la exploración del árbol de origen, ya que se modificó mientras el proyecto de Eclipse estaba cerrado) . Terminado.

No olvide actualizar el archivo  mem.ld , cambiando la dirección de origen de FLASH de  0x00000000 a  0x08000000.

El script ahora admite también la importación de bibliotecas de middleware (FatFS, FreeRTOS, LwIP).

El script está diseñado para funcionar tanto en Python 2.7 como en 3.x. Requiere la librería lxml.

Deja un comentario

Tu dirección de correo electrónico no será publicada.

CUANTAS HORAS FALTA PARA MAÑANA...