stm32 调试 main进入不了main函数,求助一下

查看: 9748|回复: 11
原子哥请教程序调试的问题!程序不进入main函数运行
主题帖子精华
新手上路, 积分 29, 距离下一级还需 21 积分
在线时间0 小时
原子哥我自己写了个小程序,调试出点问题
Reset_Handler&& PROC
&&&&&&&&&&&&&&& EXPORT& Reset_Handler&&&&&&&&&&&& [WEAK]
&&&&&&&&&&&&&&& IMPORT& __main
&&&&&&&&&&&&&&& IMPORT& SystemInit
&&&&&&&&&&&&&&& LDR&&&& R0, =SystemInit
&&&&&&&&&&&&&&& BLX&&&& R0&&&&&&&&&&&&&&
&&&&&&&&&&&&&&& LDR&&&& R0, =__main
&&&&&&&&&&&&&&& BX&&&&& R0
&&&&&&&&&&&&&&& ENDP
Run不自动运行,必须在这块点复位后,然后单步执行才进入main函数
调试选项里的Run to main勾选了啊,这是什么情况啊
主题帖子精华
金钱110717
在线时间769 小时
直接下载,能不能跑?
不调试。
我是开源电子网站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺:
微信公众平台:正点原子& &
主题帖子精华
新手上路, 积分 29, 距离下一级还需 21 积分
在线时间0 小时
回复【2楼】正点原子:
直接下载,能不能跑?
不调试。
---------------------------------
直接下载也跑不起来。。。
单步执行进入main函数后,就可以run起来了,不知道什么原因啊
主题帖子精华
金钱110717
在线时间769 小时
那确实比较怪了?
代码是不是在我们板子上跑的?
如果是的话,发上来,我测试下。
我是开源电子网站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺:
微信公众平台:正点原子& &
主题帖子精华
新手上路, 积分 29, 距离下一级还需 21 积分
在线时间0 小时
回复【4楼】正点原子:
那确实比较怪了?
代码是不是在我们板子上跑的?
如果是的话,发上来,我测试下。
---------------------------------
不是&我自己做的块小板子以太网转CAN的
以前mini板子学习的时候也没发生过这样的问题。。
主题帖子精华
初级会员, 积分 157, 距离下一级还需 43 积分
在线时间12 小时
晶振稳定等待时间加长
主题帖子精华
在线时间21 小时
楼主可以把程序改成只有几句的点灯程序看看,&如果还有问题,&再发上来给网友测试.
主题帖子精华
新手上路, 积分 29, 距离下一级还需 21 积分
在线时间0 小时
原因找到了,特发此转过来~
因printf()之类的函数,使用了半主机模式。使用微库的话,不会使用半主机模式,所以就没有问题。&
添加下面代码,就可以使用标准库了:&
#pragma&import(__use_no_semihosting)&
_sys_exit(int&x)&
{&
x&=&x;&
}&
struct&__FILE&
{&
int&&
/*&Whatever&you&require&here.&If&the&only&file&you&are&using&is&*/&
/*&standard&output&using&printf()&for&debugging,&no&file&handling&*/&
/*&is&required.&*/&
};&
/*&FILE&is&typedef’&d&in&stdio.h.&*/&
FILE&__
这个问题可以在"RealView?&编译工具库和浮点支持指南"书中找到。。
主题帖子精华
初级会员, 积分 83, 距离下一级还需 117 积分
在线时间0 小时
回复【8楼】fxh125:
---------------------------------
您好&请问#pragma&import(__use_no_semihosting)&&
_sys_exit(int&x)&&
{&&
x&=&x;&&
}&&
struct&__FILE&&
{&&
int&&&
/*&Whatever&you&require&here.&If&the&only&file&you&are&using&is&*/&&
/*&standard&output&using&printf()&for&debugging,&no&file&handling&*/&&
/*&is&required.&*/&&
};&&
/*&FILE&is&typedef’&d&in&stdio.h.&*/&&
FILE&__&
这段代码加在那里呢
主题帖子精华
金钱110717
在线时间769 小时
回复【9楼】snail519:
---------------------------------
我们的例程是仿真usart.c里面的.
我是开源电子网站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺:
微信公众平台:正点原子& &
主题帖子精华
新手上路, 积分 32, 距离下一级还需 18 积分
在线时间2 小时
直接下载,能不能跑?
请问原子哥,直接下载能跑,只要debug就跑步了是什么情况
主题帖子精华
初级会员, 积分 99, 距离下一级还需 101 积分
在线时间9 小时
楼主,keil里面的通电后从main开始运行,这里有没有打勾?写进程序后,重新断电试试看
小金科技工作室:/?spm=a313o.11.XKY4h0
Powered bystm32无法进入main函数 - STM32/STM8技术论坛 -
中国电子技术论坛 -
最好最受欢迎电子论坛!
后使用快捷导航没有帐号?
Hot [学院]
stm32无法进入main函数
12:50:43  
编译链接都是没有问题的,下载进入stm32里,没有反应,用硬件调试发现,程序根本没有进入一直循环在几句话0x1FFFF3B2 F8D01808&&LDR& && &r1,[r0,#0x808]0x1FFFF3B6 0549& && &LSLS& &&&r1,r1,#21
0x1FFFF3B8 D4FB& && &BMI& && &0x1FFFF3B2
(12.8 KB, 下载次数: 0)
12:46 上传
(18.64 KB, 下载次数: 0)
12:46 上传
10:26:41  
终于明白了,是Boot0和Boot1电平没有弄好,当boot0拉低后,程序才从flash正常启动
Powered bystm32f103zet6烧录程序后调试无法进入main函数 - STM32/STM8技术论坛 -
中国电子技术论坛 -
最好最受欢迎电子论坛!
后使用快捷导航没有帐号?
Hot [学院]
stm32f103zet6烧录程序后调试无法进入main函数
15:19:49  
将买板子送的例程烧录进去可以正常运行,但是进入调试时pc会直接指向0x地址然后陷入死循环无法进入main函数,大神们说说时哪里的设置有问题吗?
(31.23 KB, 下载次数: 3)
15:19 上传
15:53:06  
检查一下你的BOOT选项,BOOT0和BOOT1软件中Debug中设置为进入调试就进入mian函数
17:55:48  
PCB在线计价下单
板子大小:
板子数量:
PCB 在线计价
我更改boot后依旧出现这个问题不是跳到0x1FFFF020就是跳到0x
Powered by您所在的位置: >
KEIL SDK STM32在线调试进不了main
点击:3269 日期: 16:16:50
KEIL SDK STM32在线调试进不了main。
systemInit,不是自己写的函数,应该是库里面的,也没有调用,只用一个while(1);当没有勾选run to main,单步进入死循环。不管是在哪种嵌入式产品上都有可能出现这种情况,最主要的原因是我们对自己的板子程序不熟悉,不会,才导致的这种情况。所以,如果你已经有了一块RP4412开发板,那么就把你的文档认认真真地看一遍,再开始进行。
void HardFault_Handler(void)
& /* Go to infinite loop when Hard Fault exception occurs */
& while (1)
KEIL SDK STM32在线调试进不了main,代码只有也进入不了:
int main()
& &while(1);
LDR & & R0, =SystemInit
& & & & & & & & &BLX & & R0
& & & & & & & & &LDR & & R0, =__main
& & & & & & & & &BX & & &R0
到了最后 BX & RO
分析原因:
1.可能是硬件问题,导致一直复位。
2.最好自己写SystemInit,比如库里带的初始化不一定和你硬件配套。如果是初始化的问题注释掉应该可以正常跑,你可以找到库里的SystemInit看下,其实主要就是RCC的配置,仔细检查下,是不是符合你硬件。
如果是硬件问题,那么对于学习者来说就是非常有意义的一课,那就是要选择对板子,不论是在学校里自己用的单片机还是企业用的。
解决办法:
应该是硬件问题,或者开始芯片选择问题,再重新建了工程就解决了。
【 】 【 】

我要回帖

更多关于 stm32 main函数 的文章

 

随机推荐