您的位置:
OpenADSP社区论坛
->
Blackfin专区
->
新手上路
-> 【已解决】[求助]BF533程序用仿真器调试没问...
本帖共有
336
个阅读者
【已解决】[求助]BF533程序用仿真器调试没问题,但是添加初始化dxe生成ldr文件后就跑不起来了,求指点~~
秋夏之叶
(论坛新手)
头衔:
社区公民
帮派:
无帮无派
帖数:
19
金钱:
259
积分:
27
注册时间:
2017/9/30
小
大
楼主
信息
|
留言
|
Email
|
主页
|
编辑
|
管理
|
【已解决】[求助]BF533程序用仿真器调试没问题,但是添加初始化dxe生成ldr文件后就跑不起来了,求指点~~
原来代码中添加init_code.dxe文件后成ldr文件烧录进去可以跑起来,正常没问题。
但后续添加了一些代码,用仿真器在线调试没有问题,但是生成的ldr后烧进去就跑不起来了。
生成ldr文件的初始化init_code.dxe是在官方的demo工程上修改了一些寄存器配置(配置成32M等跟代码中寄存器设置一样)后生成的。
以上问题请问有什么解决办法没,已经加载初始化SDRAM的dxe文件了为啥生成ldr还不行,还有什么其他需要配置的吗?求指点~多谢了。
这家伙很懒,什么也没有留下!
等级:
2018/2/1 14:11:41
编辑帖子
帖子评价
单帖屏蔽
删除帖子
OpenADSP
(管理员)
头衔:
社区公民
帮派:
无帮无派
帖数:
5195
金钱:
34806
积分:
6378
注册时间:
2011/6/7
小
大
第
1
楼
信息
|
留言
|
Email
|
主页
|
编辑
|
管理
|
初始化init code改的不对,没有正确的初始化SDRAM。
另外你硬件SDRAM如果没有改动,为何要改初始化init?
我是OP...
等级:
2018/2/1 15:19:23
编辑帖子
帖子评价
单帖屏蔽
删除帖子
秋夏之叶
(论坛新手)
头衔:
社区公民
帮派:
无帮无派
帖数:
19
金钱:
259
积分:
27
注册时间:
2017/9/30
小
大
第
2
楼
信息
|
留言
|
Email
|
主页
|
编辑
|
管理
|
改初始化init,因为以前只是修改了Init_code的EBIU控制寄存器,后来发现其他比如说晶振输入即PLL寄存器跟目前配置不一样。所以修改了下Init_code.
但是同一个初始化的Init_code,我放到以前工程里面生成ldr文件就行,而且以前里面也用#pragma section指定了一些代码放到外部SDRAM中bank1了。
难道说代码里面有隐藏的BUG? 调试看不出来?
这家伙很懒,什么也没有留下!
等级:
2018/2/2 10:04:46
编辑帖子
帖子评价
单帖屏蔽
删除帖子
秋夏之叶
(论坛新手)
头衔:
社区公民
帮派:
无帮无派
帖数:
19
金钱:
259
积分:
27
注册时间:
2017/9/30
小
大
第
3
楼
信息
|
留言
|
Email
|
主页
|
编辑
|
管理
|
刚新发现了一个现象:
现有工程注释了一个比较大的函数后,生成ldr文件可以运行了(这个时候有部分代码是在外部SDRAM中运行的)。这个函数没有指定地方,所以应该是放在片内L1空间里面了,如果因为函数太大,片内放不下。那么系统不是自动会分配一部分到外部SDRAM中么?
为了排除以上因素,我取消这个函数的注释,在这个函数前面指定#pragma section("sdram0_bank1")放在片外SDRAM后,编译生成ldr后就也运行不了。
难道sdram0_bank1放不下这个函数?bank1有8M空间还不够么,生成的ldr总共才290k左右。
或者说函数体不能太大?要拆分成小函数?
。。。。。实在搞不懂了,求大神们指点
这家伙很懒,什么也没有留下!
等级:
2018/2/2 11:15:02
编辑帖子
帖子评价
单帖屏蔽
删除帖子
秋夏之叶
(论坛新手)
头衔:
社区公民
帮派:
无帮无派
帖数:
19
金钱:
259
积分:
27
注册时间:
2017/9/30
小
大
第
4
楼
信息
|
留言
|
Email
|
主页
|
编辑
|
管理
|
问题已经找到!
是因为Debug时,在初始化函数中调用了Printf函数。但在Release时忘了注释掉或者用宏定义圈起来。
注释Release下初始化中的Printf函数后就正常运行了。
有可能什么原因导致了Printf函数重入了,一直在循环等待......
这家伙很懒,什么也没有留下!
等级:
2018/2/5 10:25:04
编辑帖子
帖子评价
单帖屏蔽
删除帖子
Powered by
OpenADSP
Copyright © 2010
www.
Openadsp
.com
. All rights reserved.159394 Call, 1 Queries, Processed in 0.015625 second(s),