[ZLG-ARM] 请问如何在Flash的指定地址定义一个常数数组

[复制链接]
 楼主| liuguobing 发表于 2007-6-6 11:04 | 显示全部楼层 |阅读模式
请问如何在Flash的指定地址定义一个常数数组<br />如在0x00003000地址处定义一个存放{0x20,0x20,0xc4,0xd0,0xc5,0xae,0x20,0xcc,0xe5,0xd6,0xd8,0x20,0x00}的数组<br />在RAM中可以用类似如下定义:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;*ptr;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ptr&nbsp;=&nbsp;(int&nbsp;*)0x3000;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*ptr&nbsp;=&nbsp;0xaa55;<br />在Flash中定义就找不到方法了,在此请教各位高手!
25712694 发表于 2007-6-6 18:31 | 显示全部楼层

re

单独建一个文件,定义一个固定数据区<br />EG:const&nbsp;temp[]&nbsp;={0x20,0x20,0xc4,0xd0,0xc5,0xae,0x20,0xcc,0xe5,0xd6,0xd8,0x20,0x00};<br />然后在分散加载文件里对指定位置加载,就可加载到自己想指定的位置.
 楼主| liuguobing 发表于 2007-6-7 13:31 | 显示全部楼层

谢谢,这样做是比用IAP方便多了

谢谢,这样做是比用IAP方便多了,只是我一般都是用的ZLG的标准模版,对于启动代码不是太清楚,分散加载应该就改下面这一段吧,“/*......*/”请问注释部分应如何改?,还有就是单独建的文件只要有&quot;EG:const&nbsp;temp[]&nbsp;={0x20,0x20,0xc4,0xd0,0xc5,0xae,0x20,0xcc,0xe5,0xd6,0xd8,0x20,0x00};&quot;这一句就OK了吗?<br /><br />ROM_LOAD&nbsp;0x00000000<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;ROM_EXEC&nbsp;0x00000000<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Startup.o&nbsp;(vectors,&nbsp;+First)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;(+RO)<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />/*<br />&nbsp;&nbsp;&nbsp;&nbsp;ROM_EXEC&nbsp;0x0000E000<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Startup.o&nbsp;(vectors,&nbsp;+First)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;(+RO)<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />*/<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;IRAM&nbsp;0x40000000<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Startup.o&nbsp;(MyStacks)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;(+RW,+ZI)<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;HEAP&nbsp;+0&nbsp;UNINIT<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Startup.o&nbsp;(Heap)<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;STACKS&nbsp;0x40002000&nbsp;UNINIT<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Startup.o&nbsp;(Stacks)<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}
stuarm 发表于 2007-6-7 19:50 | 显示全部楼层

RE:liuguobing

“EG:”是“例如”的意思。并不是要你在程序中加入:<br />EG:const&nbsp;temp[]&nbsp;={0x20,0x20,0xc4,0xd0,0xc5,0xae,0x20,0xcc,0xe5,0xd6,0xd8,0x20,0x00};<br />这一句。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

86

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部

14

主题

86

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部