• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

stm32使用keil调试时,不能进入主函数main()中

new world 2017-07-09 浏览量:6305

stm32使用keil调试时,不能进入主函数main()中,调试使用的是JLINK。

程序一直在下面的这三句中执行。

2_1.jpg


这是Debug的调试的设置页面,帮忙看一下,万分感谢。
2_2.jpg


开始的时候,是好的。我在调试的过程的工程中,点击了左上角的RST的,然后就不行了。

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 看一下你的启动代码是不是官方的那样的,在进入main前是不是运行了SystemInit函数。如果是,看一下SystemInit函数里,你是不是更改过。


    6.PNG


    或是在配置那里不要选择Run to main,从头运行看看是哪里开始进入的总线错误。


    7.PNG

    • 发布于 2017-07-09
    • 举报
    • 评论 0
    • -1
    • 0

其他答案 数量:6
  • 那些设置你改过吗?
    • 发布于2017-07-09
    • 举报
    • 评论 3
    • 1
    • 0
new world 回复了 JESSE7 :没有 回复
JESSE7 回复了 new world :你不会是不小心动了它的启动代码吧,看你的图都掉总线错误里去了,main之前的初始化就没过 回复
new world 回复了 JESSE7 :没有动过,只是在调试的时候想重新开始,点击过RST,然后就不行了,连下载都会出现程序无法运行的状况 回复

new world 回复了 Sourcelink :下进去也不能 回复
Sourcelink 回复了 Sourcelink :你是程序问题 回复

  • BusFault_Handler,总线错误。

    你点复位后,应该不是进这个函数里的吧。

    复位后,一步步的走,看是你在配置哪个总线的时候进的这个错误。

    一般都是你的外设的配置错误造成的。

    • 发布于2017-07-09
    • 举报
    • 评论 2
    • 0
    • 0
new world 回复了 汉云 :现在直接仿真的时候就直接进入其中,跳不出了 回复
汉云 回复了 new world :复位后就在这个函数里?不可能啊。 回复

  • 設置上假設您沒有改動過,並使用JLink

    1. 您燒錄過程看看有無錯誤訊息

    2. 燒錄完畢時候,手動按一下板子Reset按鍵

    3. 再次用Debug session嘗試看看

    以上

    • 发布于2017-07-09
    • 举报
    • 评论 1
    • 0
    • 0
new world 回复了 MOP :不行,按过复位键也不行的 回复

  • 按道理来说好像没啥错误呀
    • 发布于2017-07-10
    • 举报
    • 评论 0
    • 0
    • 0

  • 错误处理函数,这说明你程序里有内存越界,也就是修改了不能修改的内存部分。检查数组越界,尤其是全局变量数组有没有越界,再看看直接内存操作有没有越界。如果是刚刚开始就进入这里,检查中断,尤其是滴答定时器等高优先级中断。最好单步运行看看到那步出的问题。
    • 发布于2017-07-10
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

stm32使用keil调试时,不能进入主函数main()中