¿Que es la AC6?
Con cube imagino que te refieres a STM32CubeMX, que es el configurador.
Pero imagino que también habra que instalar STM32CubeF4 para las librerías.
¿Que es la AC6?
Te recomiendos que leas:
http://www.todopic.com.ar/foros/index.php?topic=44325.0
Ahi ya te explica como tener todo funcionando para la placa del STM32, debugger, compilador, etc.
Respecto al J-Link no se si lleva algo aparte.
El proyecto que genera al final es de espanto. El proceso se parece a la instalación de un sistema operativo Linux antiguo. Igual de complejo y laborioso.
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.
OpenOCD child process termination. Reason: Unplugged target or STLink already in use or STLink USB driver not installed.
2º Ahora el programador JLink no funciona bien. Al intentar ejecutar el proyecto Eclipse me dice que no tengo conectado el STLink:
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.
Ok. Ya he resuelto el problema. He tenido que ejecutar Project... Index... Rebuild.
.....
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:CitarDescription 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.
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
#define B2_CERRADO HAL_GPIO_ReadPin(BOTON2_GPIO_Port, BOTON2_Pin) == GPIO_PIN_SET
#define APAGA_LASER HAL_GPIO_WritePin(LASER_GPIO_Port, LASER_Pin, GPIO_PIN_RESET);
#define ENCIENDE_LASER HAL_GPIO_WritePin(LASER_GPIO_Port, LASER_Pin, GPIO_PIN_SET);
#define CAMBIA_ESTADO_LASER HAL_GPIO_TogglePin(LASER_GPIO_Port, LASER_Pin);
#define ENCIENDE_LED1_ROJO HAL_GPIO_WritePin(LED1_ROJO_GPIO_Port, LED1_ROJO_Pin, GPIO_PIN_RESET);
#define APAGA_LED1_ROJO HAL_GPIO_WritePin(LED1_ROJO_GPIO_Port, LED1_ROJO_Pin, GPIO_PIN_SET);
#define CAMBIA_ESTADO_LED1_ROJO HAL_GPIO_TogglePin(LED1_ROJO_GPIO_Port, LED1_ROJO_Pin);
//****** DEBUG ************
while (1)
{
// DEBUG ---
if (B2_CERRADO) {
ENCIENDE_LED1_ROJO
ENCIENDE_LASER
HAL_Delay(100); //delay 200ms
} else {
APAGA_LED1_ROJO
APAGA_LASER
}
leo_sensores(); // Leo acelerometro, giroscopo, magnetometro
}
//**********************************