[ZLG-ARM] 2214问题,外部ram已去掉,光盘里的程序运行不了,怎么改?

[复制链接]
2989|4
 楼主| zhuchina 发表于 2007-3-29 11:28 | 显示全部楼层 |阅读模式
我将外部ram去掉了,(因为做产品要节约成本),&nbsp;我用开发板光盘里面的程序调试,设置成&nbsp;DebugInChipFlash<br />然后将mem_c.scf&nbsp;的<br />ROM_LOAD&nbsp;0x0<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;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;}<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;STACKS_BOTTOM&nbsp;+0&nbsp;UNINIT<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Startup.o&nbsp;(StackBottom)<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;STACKS&nbsp;0x40004000&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 /><br />&nbsp;&nbsp;&nbsp;&nbsp;ERAM&nbsp;0x80000000<br />&nbsp;&nbsp;&nbsp;&nbsp;{<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;HEAP_BOTTOM&nbsp;0x80080000&nbsp;UNINIT<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Startup.o&nbsp;(HeapTop)<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br />修改了一下,(我想如果要上面这段,程序如果用到0x80000000,就可能跑飞,所以删除),(另外,我看到一些例子程序的mem_c.scf&nbsp;也是跟下面一样的):<br />ROM_LOAD&nbsp;0x0<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;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;}<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;STACKS&nbsp;0x40004000&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 /><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 /><br />结果ads编译报警了<br />Could&nbsp;not&nbsp;place&nbsp;Os_cpu_c.o(.bss)&nbsp;in&nbsp;any&nbsp;Execution&nbsp;region<br />......<br /><br />请问怎么改呢?为什么有些简单的例子程序用上面这个mem_c.scf&nbsp;就可以,没有报警呢?<br /><br />另外没有改之前,设置成DebugInExRam编译可以通过,但仿真的时候一进&nbsp;main()就跑飞了。
zlgARM 发表于 2007-3-29 17:56 | 显示全部楼层

zhuchina

&nbsp;&nbsp;找个2100的模板来试一下,该模板有内部FLASH的生成目标的。
zlgarm 发表于 2007-3-29 22:20 | 显示全部楼层

2200的模板要求使用外部SRAM。

你的系统中没有外部SRAM,故只能使用2100的模板来建立工程。
 楼主| zhuchina 发表于 2007-3-29 22:22 | 显示全部楼层

用2100工程试过,进不了串口中断,只能发不能收

谢谢周工解答,<br />用2100工程试过,将2294.h头文件改成21xx.h程序是能运行正常,不会跑飞,但进不了串口中断(可能是我比较笨)<br /><br />还有usb-d12程序不是要重新改?<br />ucosii也要重新改&nbsp;这两个改起来要费点时间,<br /><br />如果实在不行就只能把项目完成时间拖一拖了,
 楼主| zhuchina 发表于 2007-3-29 22:26 | 显示全部楼层

或者可能我下载的lpc2100的有问题

周工老大,你们有2100工程的模版下载吗,最好是for&nbsp;ucosii的,如果网站没有能不能发到我邮箱?zhumingsz@21cn.com&nbsp;先谢谢啦,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

15

帖子

1

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