OpenOCD init Failed

0

El título lo dice todo. Una cosa que decir antes de entrar en detalles sobre el tema. Soy un completo principiante en el uso del terminal en Ubuntu y necesito ayuda con los códigos para solucionar este problema.

Larga historia corta. Estoy tratando de cargar algo de firmware a un controlador de motor utilizando una placa de descubrimiento STM32F4 ya que la programación se realiza con el ST-Link / V2 a través de los pines SWD en la placa de descubrimiento (el de la derecha). Accidentalmente olvidé quitar los puentes para permitir la carga en el controlador del motor y no sé qué pasó con la placa. Como resultado, ya no tiene leds parpadeantes en la mitad inferior del tablero. La imagen de abajo muestra lo que he estado recibiendo ayer para cargar el firmware en el controlador. He hecho una prueba para ver si conectar y no conectar el controlador daría este error. Al hacer ambas cosas se ha producido este error. Intento solucionar este problema, pero Sourceforge ha estado funcionando bien durante las últimas horas debido a una "falla de infraestructura de almacenamiento" para algunos de los archivos que espero que funcionen.

Editar1.Enrespuestaparamásinformación.ControladordemotoresunproyectodecódigoabiertodeBenjaminVedder.Másinformaciónestáensublogen enlace . La imagen de abajo es de la placa de descubrimiento STM32F4 que usé porque necesito un ST-Link / V2 para cargar el firmware en el controlador. Conectar la placa Dicovery a la computadora suministra suficiente energía a la placa. La imagen de abajo es de los puentes que debo quitar antes de programar el controlador. Si no se quitan los puentes, la placa Discovery se programará con cualquier firmware que se esté usando en este momento. Esta parte de la placa de descubrimiento con los puentes utiliza el St-Link / V2.

    
pregunta chuttney1

1 respuesta

1
  

Accidentalmente olvidé quitar los puentes para permitir la carga al controlador del motor y no sé qué pasó con la placa. Como resultado, ya no tiene leds parpadeantes en la mitad inferior del tablero.

¿Qué placa - descubrimiento o el 'controlador de motor'? Si está hablando de descubrimiento, entonces no hay nada de malo en ello, ya que encendió el microcontrolador en la placa de descubrimiento con el firmware para el 'controlador del motor'. Los puentes a los que se refiere son simplemente líneas SWD cortas entre el programador y el microcontrolador. En otras palabras, esto no podría afectar la funcionalidad de la placa que está intentando programar de ninguna manera.

Dada la información que proporcionó, puedo sugerir lo siguiente:

  • Proporcione una fuente de alimentación externa a la placa. OpenOCD lee el voltaje objetivo de 2.85V, mientras que la placa del 'controlador de motor' usa un regulador lineal de 3.3V. Esto significa que o bien hay una caída de voltaje o que el USB simplemente no proporciona suficiente corriente para alimentar ambas placas.
  • Use los cables más cortos posible .
  • Actualice el firmware ST-Link y OpenOCD. Puede utilizar Utilidad ST-Link para actualizar el firmware (solo Windows®).
  • Asegúrese de conceder permisos "0666" a st-link. Esto se puede hacer agregando la siguiente regla udev en /etc/udev/rules.d/50-stlinkv2:

    SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="3748", MODE:="0666"

    Tenga en cuenta que VID y PID de su programador pueden diferir.

respondido por el Ashton H.

Lea otras preguntas en las etiquetas