STM32程序无法进入main函数的解决方法

2023-05-24  

很多人在基于STM32单片机项目开发过程中,会遇到STM32程序无法进入main的现象,在这篇文将分享STM32程序无法进入main函数的解决方法,希望对用户有所帮助。


1.printf等函数采用了半主机模式

解决方法:关掉半主机模式,将输入输出端重定向到ARM器件上,重写fputc和fgetc函数。

2.系统滴答systick中断导致无法进入main函数

解决方法有两种:

1)在bootloader程序跳转到app层时就关闭系统滴答中断:SysTick-》CTRL &= ~SysTick_CTRL_ENABLE_Msk;

2)在SystemInit函数关闭系统滴答中断:SysTick-》CTRL &= ~SysTick_CTRL_ENABLE_Msk;

3.选择运行程序方式的问题


解决方法:把芯片上的boot0引脚拉低即可

附:

BOOT1=x BOOT0=0 从用户闪存启动

BOOT1=0 BOOT0=1 从系统存储器启动

BOOT1=1 BOOT0=1 从内置SRAM 启动

以上是STM32程序无法进入main函数的解决方法。


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。