我看的一些资料上为什么都把程序存储空间都映射到DARAM中呢?【恢复】
我看的一些资料上为什么都把程序存储空间都映射到DARAM中呢?难道这就是运行时的地址吗?那为什么没有指定程序存储到flash或ROM中的地址呢?程序是怎么存储到ROM或FLASH中的呢?
例如:这是资料上的
MEMORY
{
PAGE 0: ROM: origin=1000h, length=0100h
PAGE 1: RAM: origin=0100h, length=0100h
}
SECTIONS
{
.text :>ROM
.data :>ROM
.bss :>RAM
}
我把程序放到外部flash中存储,运行的时候放到内部DARAM中,cmd文件这么写对不对呢?
MEMORY
{
PAGE 0: PROG: o=0x4000, l=0x1000 /* 外部FLASH */
DARAM: o=0x0080, l=0x3000 /* 内部DARAM */
PAGE 1: DATA: o=0x3080, l=0x0f00 /* 内部DARAM,数据存储空间 */
}
SECTIONS
{
.............
.text load=PROG, run=DARAM
.............
} 你的意思是说选择MC模式,将OVLY=0,选择外部存储器,将flash映射到0080H到3fffH这个区域内,下载程序的时候程序就自动下载到外部flash中了吗? cmd 将文件烧写到flash是根据DSP的工作模式的啊,MP和MC模式,,MC模式下就将程序烧到FLASH里面了 是呀,flash慢,但程序是存储在flash中的呀,存储在ram中掉电就丢失了,因此程序一定是存储在flash中的。但是cmd文件怎么写才能将程序烧写到flash中呢?我上面的写法能实现吗?程序烧写到flash中,运行的时候将程序下载到ram中呢? flash慢. 楼主不要急呀,我也在看这方面的东西,一定是有原因的,是吧。
如果是用仿真器仿真时,一般都是把程序放在ram中执行的
页:
[1]