你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

紧急求助,BOOT跳到APP,进入不到main函数

[复制链接]
wyl19880823 提问时间:2015-6-26 15:32 /
最近做一个BOOT程序,BOOT程序已经做完,跳转地址设置为0x8008000,这也是APP程序的起始地址----------------

自己写了一个APP程序,从BOOT跳转过来可以正常运行-----------------------

把公司APP程序编译到0x8008000地址,可以确定已经从BOOT跳转过来了,可就是运行不起来,总是固定的跳到一个地方------------------


最后查的结果是       在执行“ __scatterload_zeroinit”的时候,不知道什么时候就跳到上文所说的那个地方了!百思不得其解,求各路大神不吝赐教!


收藏 评论9 发布时间:2015-6-26 15:32

举报

9个回答
wyl19880823 回答时间:2015-6-26 15:33:40
用的芯片是STM32F105VC
回答时间:2015-6-26 15:51:30
程序的向量列表有没有修改呢?
wyl19880823 回答时间:2015-6-26 16:10:50
FLASH_BASE  = 0x8000000
VECT_TAB_OFFSET = 0x8000;
SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET;

用的这个
wyl19880823 回答时间:2015-6-26 16:11:44
看HEX文件,向量表也的确从0x8008000地址开始的
wyl19880823 回答时间:2015-6-26 16:12:19
:020000040800F2
:10800000F8E2002041820008014D0108C511010875
:10801000214C010891C40008FBB7010800000000D2
:108020000000000000000000000000008581000842
:108030003DD7000800000000C98100084522020861
:108040005B8200085B8200085B8200085B8200089C
:108050005B8200085B8200085B82000897F90008D9
:108060005B8200085B820008A1F900085B820008BF
:108070005B8200085B8200085B8200085B8200086C
:108080005B8200085B8200085B8200085B8200085C
:108090005B8200085B8200085B820008ABF9000885
:1080A0005B8200085B8200085B8200085B8200083C
:1080B000D5A001085B8200085B8200085B82000893
:1080C0005B8200085B8200085B8200085B8200081C
:1080D0005B820008BDB70108C9B8010829B90108C9
:1080E0008DF900085B8200085B8200080000000038
:1080F0000000000000000000000000000000000080
:1081000000000000000000005B8200085B820008A5
creep 回答时间:2015-6-26 16:36:41
公司的程序生成的bin和自己写的测试app的bin大小差别很大吗,__scatterload_zeroinit只是将sram中为零的变量设置为0,这个不应该导致程序进入不了main啊?
wyl19880823 回答时间:2015-6-26 17:09:28
找到问题了,是BOOT程序在跳转之前没有关中断,关了中断就没问题。具体原因还在进一步分析,多谢
moyanming2013 回答时间:2015-6-26 18:10:33
wyl19880823 发表于 2015-6-26 17:09
找到问题了,是BOOT程序在跳转之前没有关中断,关了中断就没问题。具体原因还在进一步分析,多谢 ...

期待进一步的结果
wyl19880823 回答时间:2015-6-29 14:00:43
在APP程序进入到MAIN函数之前发生了系统滴答中断,此中断中对系统有操作,而此时freertos系统内核还没启动,所以产生了异常中断,而异常中断中会打印信息,会调用fput函数,在此函数中会调用串口进行打印,由于串口未进行初始化,所以就会一直在那里死等,所以程序就进入不了main函数,每次都会停在fput函数里

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版