STM32程序无法进入main函数的解决方法
很多人在基于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函数的解决方法。
本文整合自CSDN、博客园
责编AJX
-
STM32
+关注
关注
2305文章
11120浏览量
371143 -
函数
+关注
关注
3文章
4406浏览量
66837
发布评论请先 登录
程序加载过程中遇到的问题及其解决方法
跳转不进去main函数是怎么回事?
在rtthread的main函数里用HAL_Delay函数不起作用是哪里的问题?
用gd32f470移植成功无法进入main函数,怎么解决?
国产主板无法开机的状况及解决方法
stm32N657配置USART2,可以发送,但是为什么无法进入接收中断呢?
STM32C031C6在按键中断处理程序中使用HAL_Delay()延时函数,程序则无法运行怎么解决?
GD-LINK无法在KEIL上调试怎么解决?
变频器无法进行调速的原因和解决方法

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