Stlink: STM32F030R8T6: error de ejecución del cargador flash

Creado en 17 may. 2020  ·  9Comentarios  ·  Fuente: stlink-org/stlink

  • Programador / tipo de placa: ST-Link v2.1
  • Versión de firmware del programador: STSW-LINK007 2.37.26
  • Sistema operativo y versión: Linux, XUbuntu 18.04 LTS
  • Versión de las herramientas de Stlink y / o hash de confirmación de git: 1.6.0-311-ga98b094
  • Nombre de la herramienta de línea de comandos de Stlink: st-flash
  • Chip de destino (y placa si corresponde): STM32F030R8T6, Nucleo-64

Salida de línea de comandos:

> st-flash write dioda.bin 0x08000000
st-flash 1.6.0-311-ga98b094
2020-05-17T17:59:37 INFO common.c: F0xx: 8 KiB SRAM, 64 KiB flash in at least 1 KiB pages.
file dioda.bin md5 checksum: d3ad84699b33f431b86a77e53b16b11a, stlink checksum: 0x0000080b
2020-05-17T17:59:37 INFO common.c: Attempting to write 56 (0x38) bytes to stm32 address: 134217728 (0x8000000)
2020-05-17T17:59:37 INFO common.c: Flash page at addr: 0x08000000 erased
2020-05-17T17:59:37 INFO common.c: Finished erasing 1 pages of 1024 (0x400) bytes
2020-05-17T17:59:37 INFO common.c: Starting Flash write for VL/F0/F3/F1_XL core id
2020-05-17T17:59:37 INFO flash_loader.c: Successfully loaded flash loader in sram
2020-05-17T17:59:37 ERROR flash_loader.c: flash loader run error
2020-05-17T17:59:37 ERROR common.c: stlink_flash_loader_run(0x8000000) failed! == -1
stlink_fwrite_flash() == -1

Esperado / descripción:

Espere que se muestre, por supuesto. Más información:

  • st-info reconoce al programador
  • agregar --reset a st-flash no ayuda
  • reciclar la placa no ayuda
  • borrar masivamente el chip antes de flashear no ayuda
  • La placa Nucleo similar con STM32F103RBT6 (la misma versión de firmware ST-Link) parpadea bien con el mismo software y cable USB
bufixed componenst-flash erroflash-loader olinux programmestlinkv2-1 staturesolved targestm32f0

Comentario más útil

¿Puedes probar mi rama (con una solución rápida y sucia, solo como prueba de mi pensamiento)?

Lo construí desde su rama y puedo confirmar que soluciona el problema.

Todos 9 comentarios

Quizás sepa cuál es el problema aquí. ¿Puedes probar mi rama (con una solución rápida y sucia, solo como prueba de mi pensamiento)?

https://github.com/chenguokai/stlink/tree/stlink-v3_pre

Si estoy en lo cierto, el problema está relacionado con el código no PIC de los nuevos cargadores de flash combinados con una solución sucia en flashloader.c.

¿Puedes probar mi rama (con una solución rápida y sucia, solo como prueba de mi pensamiento)?

Lo construí desde su rama y puedo confirmar que soluciona el problema.

@chenguokai : ¿Qué tenemos aquí?

Como mencioné, los cargadores flash con licencia GPL son PIC (código independiente de la posición), mientras que los nuevos no lo son. Por eso también necesitaba escribir un script de enlace, especificando la dirección base.

Al desmontar los cargadores flash compilados, reconocí que el modo de direccionamiento era relativo a la PC (contador de programa). Pensé que eran tipos de PIC, así que guardé el truco sucio como marco en flashloader.c. A partir de este problema, puedo confirmar que el código de flashloader definitivamente no es PIC, por lo que los dos nops deben agregarse al código de flashloader en lugar de agregarse antes de un binario.

Bien, entonces puede entregar un PR para el lanzamiento de junio, pero asegúrese de bifurcar develop lugar de stlink-v3_pre que eliminé después del último PR. No sé si esto puede causar efectos secundarios.

@ grzegorz-kraszewski Por favor verifique si mi PR soluciona este problema :-)

@ grzegorz-kraszewski Por favor verifique si mi PR soluciona este problema :-)

No estoy seguro, ya que desencadena otro:

> st-flash write ~/dioda_f030.bin 0x08000000
st-flash 1.6.0-314-g273e798
2020-05-18T10:59:30 WARN common.c: unknown chip id! 0x374b
Failed to connect to target

@ grzegorz-kraszewski: Parece un tema diferente. Abra un nuevo ticket para eso.

No estoy seguro, ya que desencadena otro:

¿Ayuda un relanzamiento o desenchufar y enchufar?

¿Fue útil esta página
0 / 5 - 0 calificaciones