打印

dsp28335 向片外RAM烧写程序

[复制链接]
6799|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sxmengjing|  楼主 | 2013-8-26 12:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想通过XINTF接口外扩一片256k x16的RAM,烧写程序时向片外RAM中烧写,而不烧写到片内RAM中,以前没做过这方面的东西,请问我都需要做什么?听说CMD文件是一定要修改的,不知道要怎么改呢,有没有人做过这方面?请求帮助!!!(分数不多,只能给这么多了).

相关帖子

沙发
zhangmangui| | 2013-8-26 16:17 | 只看该作者
首先  程序烧写不可能烧写到RAM中   
外扩RAM你要确定被映射到了那个区
然后以这个区为基地址去操作外扩RAM
参与活动  送28335书  
https://bbs.21ic.com/icview-603842-1-1.html

使用特权

评论回复
板凳
sxmengjing|  楼主 | 2013-8-27 14:20 | 只看该作者
zhangmangui 发表于 2013-8-26 16:17
首先  程序烧写不可能烧写到RAM中   
外扩RAM你要确定被映射到了那个区
然后以这个区为基地址去操作外扩RA ...

我说的不准确,我是想在外扩RAM中下载调试程序,调试成功了再往Flash中烧写,比如说RAM映射到区域7,我做了三步:1. 在CMD文件中定义了区域7的数据空间和程序空间;2. 在主函数中初始化了XINTF 区域7寄存器;3. 将程序用了MemCopy()函数,将程序从片内RAM拷贝到区域7的程序段了,这样就可以了吗?

使用特权

评论回复
地板
zhangmangui| | 2013-8-27 16:17 | 只看该作者
sxmengjing 发表于 2013-8-27 14:20
我说的不准确,我是想在外扩RAM中下载调试程序,调试成功了再往Flash中烧写,比如说RAM映射到区域7,我 ...

那你为什么不在自带的RAM中调试呢  外扩的话肯定要改CMD   修改引到代码

使用特权

评论回复
5
sxmengjing|  楼主 | 2013-8-28 13:02 | 只看该作者
zhangmangui 发表于 2013-8-27 16:17
那你为什么不在自带的RAM中调试呢  外扩的话肯定要改CMD   修改引到代码

片内RAM只有34K,老大要求在外扩的RAM中调试,所以外扩了256kx16的RAM,你做过类似的工程吗

使用特权

评论回复
6
zhangmangui| | 2013-8-28 13:05 | 只看该作者
sxmengjing 发表于 2013-8-28 13:02
片内RAM只有34K,老大要求在外扩的RAM中调试,所以外扩了256kx16的RAM,你做过类似的工程吗 ...

程序一般运行的时候我都是将flash中的代码调到RAM中运行
这样的话你根据映射的区  改一下地址就可以了

使用特权

评论回复
7
zhangmangui| | 2013-8-28 13:06 | 只看该作者
zhangmangui 发表于 2013-8-28 13:05
程序一般运行的时候我都是将flash中的代码调到RAM中运行
这样的话你根据映射的区  改一下地址就可以了  ...

EX06_ExRam.rar (389.69 KB)
小代码  你可以看看

使用特权

评论回复
8
sxmengjing|  楼主 | 2013-8-28 14:36 | 只看该作者
zhangmangui 发表于 2013-8-28 13:06
小代码  你可以看看

好的,太感谢了

使用特权

评论回复
9
sxmengjing|  楼主 | 2013-9-3 15:18 | 只看该作者
zhangmangui 发表于 2013-8-28 13:06
小代码  你可以看看

我试了一下,更改CMD文件,把程序段映射到XINTF区域的区域6,程序可以下载到芯片中,可以全速运行,但是不能加断点了,然后把程序段又改为映射到片内RAM,将数据段映射到区域6,程序正常运行,我定义的全局变量存在区域6的地址里。我的疑问是我怎么样做才能把.text段映射到区域6呢?因为当代码很长的时候,.text段也很大,片内RAM放不下.text段。

使用特权

评论回复
10
yangmiao0223| | 2013-9-3 19:33 | 只看该作者
sxmengjing 发表于 2013-9-3 15:18
我试了一下,更改CMD文件,把程序段映射到XINTF区域的区域6,程序可以下载到芯片中,可以全速运行,但是 ...

先将memory中定义地址如:
page 0 :sxmengjing : origin = 0x100000, length = 0x40000
然后在SECTIONS中将text段以及其他代码段 映射到 sxmengjing段中 如:
   .text            : > sxmengjing ,      PAGE = 0
   .cinit           : > sxmengjing ,      PAGE = 0

使用特权

评论回复
11
yangmiao0223| | 2013-9-3 19:37 | 只看该作者
sxmengjing 发表于 2013-8-27 14:20
我说的不准确,我是想在外扩RAM中下载调试程序,调试成功了再往Flash中烧写,比如说RAM映射到区域7,我 ...

前两步都对了,第三步不对,你应该是片内RAM放不下,你才会放到外部RAM中呀。直接定义到片外RAM中运行,不要Memcopy()

使用特权

评论回复
12
sxmengjing|  楼主 | 2013-9-11 10:54 | 只看该作者
本帖最后由 sxmengjing 于 2013-9-25 09:12 编辑
yangmiao0223 发表于 2013-9-3 19:37
前两步都对了,第三步不对,你应该是片内RAM放不下,你才会放到外部RAM中呀。直接定义到片外RAM中运行, ...

谢谢你的回答,我按照你说的对程序做了三种改变:
1. 更改CMD文件,把.text和.cinit映射到0x100000,程序可以下载到芯片中,运行速度比片内RAM中慢了一点,但是不能加断点了。
2. 然后把程序段又改为映射到片内RAM,只将数据段映射到区域6,程序正常运行。
3. 我在主程序中不初始化XINTF 区域6,只改动CMD文件和初始化区域6,运行结果一样,所以我想是不是向片外RAM下载程序时不用初始化XINTF模块呢?

使用特权

评论回复
13
yangmiao0223| | 2013-9-11 15:56 | 只看该作者
sxmengjing 发表于 2013-9-11 10:54
谢谢你的回答,我按照你说的对程序做了三种改变:
1. 更改CMD文件,把.text和.cinit映射到0x100000,程序 ...

可行

使用特权

评论回复
14
Veronica_yuan| | 2013-9-18 16:28 | 只看该作者
本帖最后由 Veronica_yuan 于 2013-9-18 16:42 编辑

我也遇到同样的问题:
程序.text段过长,内部ram不够用,所以我用了外扩ram区域7,我在主程序中对zone7做了初始化,然后修改了cmd文件:
page0:
ZONE7A     : origin = 0x200000, length = 0x010000
.text            : > ZONE7A,     PAGE = 0
但是修改完之后,程序没有办法load到ram中,请问这要怎么修改?
@yangmiao0223  

使用特权

评论回复
15
zhangmangui| | 2013-9-20 11:30 | 只看该作者
Veronica_yuan 发表于 2013-9-18 16:28
我也遇到同样的问题:
程序.text段过长,内部ram不够用,所以我用了外扩ram区域7,我在主程序中对zone7做了 ...

你们两个相互交流  解决了求分享  谢谢

使用特权

评论回复
16
yangmiao0223| | 2013-9-22 09:23 | 只看该作者
Veronica_yuan 发表于 2013-9-18 16:28
我也遇到同样的问题:
程序.text段过长,内部ram不够用,所以我用了外扩ram区域7,我在主程序中对zone7做了 ...

你的读写外部ram有问题么???向外部ram写数据是对的么

使用特权

评论回复
17
llf021421| | 2014-8-3 01:36 | 只看该作者
我也遇到了这样的问题。如果dsp的程序过大,.text在芯片的内部sram装不下的话,只能放在外部sram,有什么办法让程序固化在内部flash,运行在外部sram呢?

使用特权

评论回复
18
llf021421| | 2014-8-3 14:26 | 只看该作者
我的问题已经解决了。现在程序是固化在flash中,运行的时候全部在外部的sram中运行,内部sram完全可以不需要了

使用特权

评论回复
19
scottly| | 2014-10-13 16:55 | 只看该作者
llf021421 发表于 2014-8-3 14:26
我的问题已经解决了。现在程序是固化在flash中,运行的时候全部在外部的sram中运行,内部sram完全可以不需 ...

不错,恭喜,我现在做的也和这个相关,请问你是怎么解决的呢?能加你qq交流下么?

使用特权

评论回复
20
scottly| | 2014-10-13 17:31 | 只看该作者
楼主问题解决了么?请问怎么弄呢?能否qq交流下呢?谢谢

使用特权

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

本版积分规则

14

主题

47

帖子

0

粉丝