Estoy usando un STM32L031 con Eclipse para mi aplicación. Cuando está en modo de depuración, todo funciona bien. Pero cuando detengo el modo de depuración o apago y vuelvo a encender, el STM32L031 deja de funcionar.
Esperaba que después de descargar el código en el chip, debería funcionar siempre que lo encienda.
Y como no estoy usando una placa de evaluación, no hay un botón de reinicio, así que no puedo reiniciarlo.
¿Cómo resolver este problema? ¿O hay alguna manera de restablecer el chip sin requerir el hardware del botón Restablecer?
Una cosa que puede hacer que deje de ejecutarse es si está utilizando semi-hospedaje. En las propiedades de su proyecto, intente eliminar los siguientes dos símbolos:
Tengo varios proyectos, y solo algunos de ellos requieren la eliminación del semi-hospedaje. Todavía no he averiguado por qué es necesario para unos y para otros no...
Ah, y si apagar y encender la placa no funciona, tampoco lo haría un botón de reinicio.
printf()
. Si no llama a esas funciones, su aplicación no es diferente con y sin semialojamiento.main
, a diferencia de las aplicaciones "no alojadas" que comienzan con algo como __program_start
. Por cierto, si ejecuta sin hospedaje, debe inicializar STDOUT usted mismo antes de poder usar printf
, pero puede que no sea la única diferencia.
Sean Houlihane
Arsenal
chris stratton
Sean Houlihane
jaskij
Dmitri Grigoriev