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

紧急求助,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管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版