Autor Tema: Entorno de desarrollo para STM32F4  (Leído 14870 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Picuino

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5892
    • Picuino
Re:Entorno de desarrollo para STM32F4
« Respuesta #30 en: 29 de Mayo de 2017, 17:34:02 »

Desconectado Picuino

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5892
    • Picuino
Re:Entorno de desarrollo para STM32F4
« Respuesta #31 en: 29 de Mayo de 2017, 17:57:37 »
Plugin instalado.

Llevo dos días para encender un simple led en la placa y todavía no lo he conseguido. Estoy empezando a cansarme de la porquería del Eclipse. Como no empiece a funcionar ya, me voy a la línea de comandos.

Ahora le doy al RUN y me dice que no puede encontrar los binarios, que primero compile (Build) el proyecto.
Le doy al Build (Ctrl+B, Build all), se compila todo sin errores y sigue sin encontrar los binarios.  :8}

¿Hay que hacer un master para compilar un simple programa de encender un led?
¿Este es el entorno de desarrollo para STM32 sencillo?
¿Todavía hay alguien que se pregunte por qué Arduino lo está petando?

Esto es inhumano.
Echo de menos el emoji para colgarme.

Saludos.

Desconectado Picuino

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5892
    • Picuino
Re:Entorno de desarrollo para STM32F4
« Respuesta #32 en: 29 de Mayo de 2017, 18:06:18 »
Lo encontré:


* hangman.png
(40.37 kB, 147x225 - visto 623 veces)


Ya me encuentro mejor :D

Lo dejo por hoy. Saludos.

Desconectado planeta9999

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3520
    • Pinballsp
Re:Entorno de desarrollo para STM32F4
« Respuesta #33 en: 29 de Mayo de 2017, 18:26:42 »
.

Yo con Jlink en Eclipse para los STM32 no te puedo ayudar, uso el ST-Link V2 de ST. Nunca me ha dado ese error de binario no encontrado.

Mira a ver que tienes configurado en Run > Run Configurations, en la pestaña del proyecto, Debug, Debug Device y Debug Interface. 

En la web de SEGGER también te explican al detalle como instalar Jlink en Eclipse, aunque relacionado con hacer Debug, no veo por ninguna parte referencias a usar Jlink parar programar el chip desde Eclipse:
https://www.segger.com/IDE_Integration_Eclipse.html

Aquí te explican al detalle como configurar Eclipse para usar Jlink.
http://gnuarmeclipse.github.io/debug/jlink/



« Última modificación: 29 de Mayo de 2017, 18:41:20 por planeta9999 »

Desconectado elgarbe

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2178
Re:Entorno de desarrollo para STM32F4
« Respuesta #34 en: 29 de Mayo de 2017, 20:28:59 »
Plugin instalado.

Llevo dos días para encender un simple led en la placa y todavía no lo he conseguido. Estoy empezando a cansarme de la porquería del Eclipse. Como no empiece a funcionar ya, me voy a la línea de comandos.

Ahora le doy al RUN y me dice que no puede encontrar los binarios, que primero compile (Build) el proyecto.
Le doy al Build (Ctrl+B, Build all), se compila todo sin errores y sigue sin encontrar los binarios.  :8}

¿Hay que hacer un master para compilar un simple programa de encender un led?
¿Este es el entorno de desarrollo para STM32 sencillo?
¿Todavía hay alguien que se pregunte por qué Arduino lo está petando?

Esto es inhumano.
Echo de menos el emoji para colgarme.

Saludos.

Yo creo que cometiste cuanto error existe. Va con onda.
Mirá que simple es todo si seguis los pasos que el fabricante pide:
http://www.todopic.com.ar/foros/index.php?topic=44325.0

Vos descargaste todo por separado, luego quisiste integrarlo, luego modificaste cosas en las propiedades de proyecto, algo con el make, cosas que nunca vi en ningun otro lado  :shock:

Fijate en el post que puse, son 3 hojas y los utiles son solo 3 o 4 post creo yo. Es muy simple y esta casi todo automático.

Saludos
-
Leonardo Garberoglio

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:Entorno de desarrollo para STM32F4
« Respuesta #35 en: 29 de Mayo de 2017, 22:34:04 »
Es como dice elgarbe, es instalar 2 cosas seguidas + pedir instalar nuevo software para el debug (ya dentro del eclipse) y esta funcionando. Al menos esa fue mi experiencia siempre que lo instale.

Desconectado Picuino

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5892
    • Picuino
Re:Entorno de desarrollo para STM32F4
« Respuesta #36 en: 30 de Mayo de 2017, 17:39:40 »
La instalación está bien hecha. Los problemas están en otro lado:

1º El proyecto tenía algún problema. He vuelto a generar uno más simple con STM32CubeMX y ha compilado sin problemas. Ya no me da el error anterior

2º Ahora el programador JLink no funciona bien. Al intentar ejecutar el proyecto Eclipse me dice que no tengo conectado el STLink:

Citar
OpenOCD child process termination. Reason: Unplugged target or STLink already in use or STLink USB driver not installed.

Desconectado elgarbe

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2178
Re:Entorno de desarrollo para STM32F4
« Respuesta #37 en: 30 de Mayo de 2017, 20:36:31 »
2º Ahora el programador JLink no funciona bien. Al intentar ejecutar el proyecto Eclipse me dice que no tengo conectado el STLink:

Ten en cuenta que el JLink no es de ST. EL programador/depurador de ST es el STLink. Por lo tanto lo que estas tratando de hacer es algo que no es "normal" en el IDE de ST, el SystemWorkbench. Si bien hay plugins para eclipse, tranquilamente puedes renegar mucho para hacerlos andar.
Si te sirve de algo, la fuente de informacion o consultas del systemworkbench es el foro que está en openstm32.com

Si lo que tuvieses es una STLink, no tienes mas que hacer click aquí:


* Debug.png
(21.87 kB, 569x197 - visto 550 veces)


y automáticamente se te crea la configuracion del GDB y la comunicacion con la STLink. Es muy simple.

Saludos
-
Leonardo Garberoglio

Desconectado elgarbe

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2178
Re:Entorno de desarrollo para STM32F4
« Respuesta #38 en: 30 de Mayo de 2017, 20:43:07 »
Llevo dos días para encender un simple led en la placa y todavía no lo he conseguido. Estoy empezando a cansarme de la porquería del Eclipse. Como no empiece a funcionar ya, me voy a la línea de comandos.

Hace unas semanas estuve investigando para como hacer para obtener un makefile de un proyecto creado con CubeMX, con eso ya podrías pasar a la linea de comandos (estaba tratando de conseguir eso mismo)
Lo que encontré es esto:
https://github.com/duro80/Makefile4CubeMX

Fijate que hay una issue cerrada en la que plantié un problema:
https://github.com/duro80/Makefile4CubeMX/issues/2

Si consigues que funcione, me interesa. Podrías hacer un post con como crear el makefile con un proyecto de CubeMX.

CubeMX es muy pero muy util. Yo trabajo con dos monitores, a la derecha tengo el CubeMX con la figura del micro y sus pines, asignando y remapeando las señales que necesito y en el monitor central el Altium con el ruteo. En funcion de como me quedan mejor las pistas voy cambiando la asignacion de perifericos en el CubeMX. Cuando termino, genero el proyecto, lo importo en el SystemWorkbench y empiezo a agregar codigo.
Al principio no me gustaba, pero debo reconocer que es una herramineta excelente.

Saludos
-
Leonardo Garberoglio

Desconectado elgarbe

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2178
Re:Entorno de desarrollo para STM32F4
« Respuesta #39 en: 30 de Mayo de 2017, 20:50:27 »
Ok. Ya he resuelto el problema. He tenido que ejecutar Project... Index... Rebuild.
.....

Eso es de otro post. Te respondo acá.
De esta FAQ:
http://www.openstm32.org/tiki-view_faq.php?faqId=5

Extraigo esto:
Código: C
  1. Question: I got plenty of "could not be resolved" errors in a newly created/imported project
  2. Answer  These errors are sometimes reported by eclipse when it access some source file before its index was fully built. To solve this you should rebuild the index by right-clicking on the project (or any file in the project) in th eProject Explorer then selecting "Index >> Rebuild". Then, if they do not disapear automatically after a while, you may delete the errors (in the Problems view) and they should no more appear.

Igual, entiendo que con esos errores, el programa compila igual, solo que tenes un monton de cosas marcadas en rojo.

Saludos
-
Leonardo Garberoglio

Desconectado elgarbe

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2178
Re:Entorno de desarrollo para STM32F4
« Respuesta #40 en: 30 de Mayo de 2017, 21:12:14 »
He vuelto a instalar SystemWorkbench. Al iniciar, ha vuelto a descargar el GNU ARM Toolchain y ya está integrado.

Ahora el problema está en las librerías. He descargado el archivo stm32CubeF4 pero no sé cómo integrarlo en Eclipse.
Me dan muchos errores al compilar por falta de librerías:
Citar
Description   Resource   Path   Location   Type
Field '__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1)' could not be resolved   main.c   /Project0/Src   line 176   Semantic Error

Un saludo.

Esto tambien es del otro post.

Las librerías HAL que estan en el stm32CubeF4 no debes descargarlas e integrarlas por tu cuenta. Es todo automático. Quizás el problema sea ese, estas acostumbrado a hacer todo a mano y cuando te encuentras con algo que es automático lo rompes sin querer metiendo mano.

Te explico, si lo que querés es arrancar un proyecto de 0 en el system workbench para stm32 y que incluya las HAL entras al SW, creas un workspace nuevo, en una carpeta vacía. Luego vas a File-> New -> C project, en la ventana que aparece pones el nombre y eliges AC6 STM32 MCU Project en el tipo de proyecto, luego Next, otra vez next, En la siguiente pantalla debes elegir la MCU o la placa que estas usando. Si es una placa propia, eliges create a new custom board y en la nueva ventanita podrás poner de que modo vas a programar/depurar el micro. Finalmente en la ultima ventana tiene que elegir si queres que el proyecto tenga o no las HAL. Si eliges que si, entonces automáticamente el SW verifica si ya tienes las ultimas Cube instaladas, si no las tienes, eliges download target firmware y listo, solito se instala y configura todo.
En esta ultima ventana hay algo interesante. Puede elegir que las HAL se inserten en tu proyecto y se compilen junto a tu proyecto o que se  agreguen al workspace como una librería estática externa. La ventaja de esta ultima opcion es que si tienes muchos proyectos con la misma placa, si lasHAL son externas, solo se compilan una vez para todos los proyectos y no ocupan lugar en el proyecto. Si eliges que se copien en cada proyecto, pues cada proyecto pesará varios mega bytes en el disco rigido.

Si lo que quieres es traer un proyecto del CubeMX, entonces es en el CubeMX donde debes tener las HAL instaladas. Por supuesto, esa instalacion es automática tambien.

Espero aclare un poco el panorama.

Saludos!
-
Leonardo Garberoglio

Desconectado elgarbe

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2178
Re:Entorno de desarrollo para STM32F4
« Respuesta #41 en: 30 de Mayo de 2017, 21:17:29 »
Llevo dos días para encender un simple led en la placa y todavía no lo he conseguido. Estoy empezando a cansarme de la porquería del Eclipse. Como no empiece a funcionar ya, me voy a la línea de comandos.

Hace unas semanas estuve investigando para como hacer para obtener un makefile de un proyecto creado con CubeMX, con eso ya podrías pasar a la linea de comandos (estaba tratando de conseguir eso mismo)
Lo que encontré es esto:
https://github.com/duro80/Makefile4CubeMX

Fijate que hay una issue cerrada en la que plantié un problema:
https://github.com/duro80/Makefile4CubeMX/issues/2

Si consigues que funcione, me interesa. Podrías hacer un post con como crear el makefile con un proyecto de CubeMX.

CubeMX es muy pero muy util. Yo trabajo con dos monitores, a la derecha tengo el CubeMX con la figura del micro y sus pines, asignando y remapeando las señales que necesito y en el monitor central el Altium con el ruteo. En funcion de como me quedan mejor las pistas voy cambiando la asignacion de perifericos en el CubeMX. Cuando termino, genero el proyecto, lo importo en el SystemWorkbench y empiezo a agregar codigo.
Al principio no me gustaba, pero debo reconocer que es una herramineta excelente.

Saludos

A partir de la version 4.21.0 ya se puede generar un makefile con el CubeMX.

Saludos!
-
Leonardo Garberoglio

Desconectado Picuino

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5892
    • Picuino
Re:Entorno de desarrollo para STM32F4
« Respuesta #42 en: 31 de Mayo de 2017, 04:18:06 »
Gracias por las respuestas. Tomo nota de todo.

1. Voy a seguir intentando poner en marcha Eclipse con JLink
2. Compraré una placa de ST con STLink para empezar con algo estandar sin tantos problemas.
3. Una vez que Eclipse funcione intentaré utilizar los makefiles.

Es verdad que me siento más cómodo gestionando las cosas a mano. Eso de que las máquinas y ordenadores hagan las cosas en automático no suele funcionar bien. Ni siquiera con el cambio de marchas de los automóviles. Funciona de forma ideal, pero te quita libertad y al final conduzco mejor con mi antiguo cambio de marchas manual.

Un saludo.

Desconectado planeta9999

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3520
    • Pinballsp
Re:Entorno de desarrollo para STM32F4
« Respuesta #43 en: 31 de Mayo de 2017, 04:43:28 »
.

Yo no me complicaría la vida, usa ST-Link V2 con Eclipse para ST y te funcionará a la perfección. Ten en cuenta que Jlink tiene muchas limitaciones, a menos que te gastes un pastizal en la versión PRO o uses un clon (y no lo actualices o te lo cargarás).

Jlink solo lo tengo para los Kinetis con KDS, MCUXpresso y también lo puedo usar con los ARM de Atmel, aunque para eso prefiero el Atmel IDC.

Jlink para ST con Eclipse, creo que está documentado para Debug con GDB, pero no he visto como configurarlo para poder programar desde Eclipse. Siempre podrías configurar una llamada a un programa externo, y ejecutar el JFlash Lite, pero es mucho más cómodo que se programe y ejecute desde Eclipse pulsando el icono "Run".

« Última modificación: 31 de Mayo de 2017, 04:51:01 por planeta9999 »

Desconectado Picuino

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5892
    • Picuino
Re:Entorno de desarrollo para STM32F4
« Respuesta #44 en: 31 de Mayo de 2017, 17:40:53 »
Ya he conseguido grabar el *.hex en el microcontrolador con la utilidad J-Flash Lite de Segger.
No he conseguido integrar el J-Link en System Workbench y no pienso perder más tiempo en ello. Ya he comprado un ST-Link y es lo único que pienso utilizar.

El problema ahora es que no sé que instrucciones usar para encender un led en PC10 (digitalWrite) y para esperar un segundo (delay).

Espero que todo esto merezca la pena. Con Arduino ha sido infinítamente más sencillo empezar con Teensy. En un minuto hice el programa de parpadeo y a los pocos días estaba programando las HAL y en ensamblador.
Con STM32 la curva de aprendizaje es bastante más pronunciada.

Saludos.


 

anything