打印
[应用相关]

新手使用STM32第二个问题

[复制链接]
2153|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
alex74|  楼主 | 2009-4-24 15:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
前段时间发生的启动就进入HardFault中断的问题找到。
是jlink的问题。
我用的是MDK3.5 + JLINK 5.4.
换用ULINK1就可以正常的跑了,没有再进入hardFault.

新的问题:
我现在的调试是烧入flash再调试的。jtag的时候程序跑的正常,可以闪灯。
但是自加载不闪灯。boot设为了00.

各位老手:可能是什么问题?
沙发
alex74|  楼主 | 2009-4-24 17:15 | 只看该作者

....

问题解决。
用mdk产生的scatter文件可以跑

LR_IROM1 0x08000000 0x00020000  {    ; load region size_region
  ER_IROM1 0x08000000 0x00020000  {  ; load address = execution address
   *.o (RESET, +First)
   *(InRoot$$Sections)
   .ANY (+RO)
  }
  RW_IRAM1 0x20000000 0x00005000  {  ; RW data
   .ANY (+RW +ZI)
  }
}

我用自己的scatter文件,不能跑。因为有一段ram里的内容需要加载
FLASH 0x8000000 0x20000
{
    ro_reign +0
    {
        *.o (RESET, +First)
        *.o(*)
    }
}


RAM 0x20000000 0x5000
{
    rw_reign +0
    {
        *.o(STACK)
        *.o(.data)
        *.o(.bss)
    }
}

但是两者有什么不同呢?

使用特权

评论回复
板凳
alex74|  楼主 | 2009-4-24 17:26 | 只看该作者

。。。。

用系统自己生成的scatter文件,ram里的数据段会被自加载。
我自己写的scatter文件,ram里的段不会被自加载。

这是编译器的行为不同造成的,但是是哪些选项会造成这个差别呢?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

43

主题

474

帖子

3

粉丝