Eclipse para microcontroladores (STM32) + FreeRTOS Task Aware Debugger

imagen


Este artículo describirá cómo instalar eclipse para microcontroladores + FreeRTOS Task Aware Debugger.

Por ejemplo, el sistema operativo Windows, CubeMX y la placa de descubrimiento STM32L4.

Instalación


Instalar:

Eclipse IDE para desarrolladores de C / C ++
Descargar eclipse , descomprimir, copiar a C: / eclipse
chocolateoso
Chocolatey: un administrador de paquetes para Windows, un análogo de apt-get, le permite instalar programas a través de la consola.
Abra PowerShell.exe como administrador y ejecute:
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1')) 
Jdk
Sin JDK, eclipse y CubeMX no se iniciarán.
Abra PowerShell.exe como administrador y ejecute:

 cinst -y jdk8 
Node.js
Node.js contiene el administrador de paquetes npm necesario para instalar xpm.
Abra PowerShell.exe como administrador y ejecute:

 cinst -y nodejs 
xpm
Xpm: administrador de paquetes xPack, le permite instalar rápidamente las utilidades necesarias para eclipse con tres líneas en la línea de comando.
Reinicie PowerShell.exe como administrador y ejecute:

 npm install --global xpm 
Compilador de brazo, sistema de compilación y depurador
Reinicie PowerShell.exe como administrador y ejecute:

 xpm install --global @gnu-mcu-eclipse/arm-none-eabi-gcc 
 xpm install --global @gnu-mcu-eclipse/windows-build-tools 
 xpm install --global @gnu-mcu-eclipse/openocd 
Complemento GNU MCU:
Inicie eclipse, Ayuda -> Eclipse marketplace ...

Ingrese "GNU MCU" en el cuadro de búsqueda.

Haga clic en instalar.

Dejamos todo como está, haga clic más, más, más. Eclipse se reiniciará. imagen
Paquete mcu
Vaya a Paquetes, haga clic en Actualizar. imagen
Elegimos la instalación del paquete en función de su microcontrolador: imagen
Después de eso, vamos a la cocina a poner una tetera, el proceso de actualización no es rápido.
imagen
Cuando aparezca el error, haga clic en Ignorar todo: imagen
Cubemx
Sigue el enlace , descarga e instala
ST-Link
Sigue el enlace , descarga e instala
Software de enlace J
Sigue el enlace , descarga e instala


Intermitente ST-Link a J-Link
Siga el enlace , descargue e instale.
Ejecute STLinkReflash.exe, acepte el acuerdo, seleccione [1] - Actualice a J-Link.
En cualquier momento, puede devolver ST-Link seleccionando [3] - Restaurar ST-Link. imagen
Borramos la memoria en el microcontrolador.
Abra J-flash lite en el lanzamiento, haga clic en Aceptar imagen
Seleccione su microcontrolador y presione Borrar. imagen

Creación de proyectos


En la carpeta del proyecto, cree 2 proyectos:
 C:\projects\armtest_cube C:\projects\armtest 

Crea un proyecto en CubeMX
Entramos en CubeMX, creamos un nuevo proyecto.
Incluimos FreeRTOS en el proyecto, cambie USE_TRACE_FACILITY -> HABILITADO
imagen
RECORD_STACK_HIGH_ADDRESS -> Habilitar
imagen
SYS -> Fuente de base de tiempo, seleccione cualquier temporizador innecesario, por ejemplo TIM7
imagen
Incluimos funciones adicionales según sea necesario.
Haz clic en Generar código.
imagen
Crear un proyecto en Eclipse
Vaya a Eclipse -> Nuevo -> Proyecto ...
Elija proyecto C
imagen
Establecemos el nombre del proyecto y su ubicación, seleccionamos el tipo de proyecto.
imagen
Lo más importante es indicar el núcleo correcto, dependiendo de su tipo de microcontrolador (ver hoja de datos). El resto de la configuración no es importante.
imagen
Haga clic en siguiente, siguiente.
Si la cadena de herramientas no se detecta automáticamente, indique su ubicación.
Haz clic en Finalizar.
imagen
Eliminar todo del árbol del proyecto:
imagen
Entramos en la carpeta del proyecto armtest_cube y copiamos todo excepto .project y .cproject en la carpeta del proyecto armtest.
imagen
Actualización del árbol del proyecto:
imagen
Vaya a la configuración del proyecto Proyecto -> Propiedades, seleccione el microcontrolador necesario. imagen
Entramos en la configuración del enlazador, eliminamos todos los archivos de Script disponibles y agregamos el archivo ld del árbol del proyecto.
imagen
Conectamos la biblioteca con soporte para punto flotante:
imagen
Seleccione el formato de archivo de salida Motorola S-record
imagen
Añadir includ'y:
imagen
Agregar definición para preprocesador:
imagen
Cambie el nombre del archivo de inicio "startup_stm32l476xx.s" a "startup_stm32l476xx.S". De lo contrario, aparecen errores en la depuración. imagen
Ejecutar -> Configuraciones de depuración imagen
Instalar el complemento de depuración FreeRTOS
Ayuda -> Instalar nuevo software ...
 http://freescale.com/lgfiles/updates/Eclipse/KDS 
imagen

Resumen


Active Debug, en el nuevo menú de FreeRTOS, seleccione Lista de tareas + Uso del montón.

imagen

Obtenemos una visualización de la carga de Heap & Stack y otros bollos:

imagen

Source: https://habr.com/ru/post/441810/


All Articles