标题:
请教变量定位
[打印本页]
作者:
hitmissile
时间:
2007-2-9 23:00
标题:
请教变量定位
想把一个数组直接定位到外部双口RAM地址,这样就可当成普通变量操作,比较方便。但是搞了整整一晚上也没搞定,查了论坛里的帖子,基本是针对8位和16位机的,和CF的语法有些不同,Diab编译器的话有比较方便的方法:
#pragma section Dprammr far-absolute RW address=0x300000 //双口RAM地址段
#pragma use_section Dprammr dpmrsw //
volatile unsigned char dpmrsw[256]; //这样dpmrsw[256]就定位到了0x300000
我用的编程环境是Codewarrior 4.0,MCU为MCF5282,在Codewarrior中是否有与以上类似的语句?
查了一些资料,稍嫌简单,哪位有相关资料或例程?不胜感激。
作者:
hitmissile
时间:
2007-2-10 21:20
陈老大,各位老大!帮帮忙啊!
作者:
hitmissile
时间:
2007-2-11 20:49
还是没人回复啊!郁闷啊
作者:
seuafu2005
时间:
2007-2-12 09:44
CW同样有这个用法
在.lcf文件中定义
sram0 (RWX) : ORIGIN = 0x20000000, LENGTH = 0x00010000
.sram:
{ *(.sramcode)
} >>sram0
在main.c文件中定义
#pragma define_section sramcode ".sramcode"
#pragma section sramcode begin
volatile unsigned char dpmrsw[256];
#pragma section sramcode end
作者:
hitmissile
时间:
2007-2-12 19:53
好的,谢谢,我先试试^^
作者:
hitmissile
时间:
2007-2-12 19:59
可以了!非常感谢!
作者:
hitmissile
时间:
2007-2-12 20:02
原来如此,Diab是不用修改连接文件的,直接在程序中加代码就可以了,比较一下的话,相对而言还是Diab方便一点啊
作者:
zhangxian9s08
时间:
2009-5-16 12:25
你可以试试:volatile unsigned char dpmrsw[256] @ 0x30000000;
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0