用keil写程序时出现“C(162): error C249: 'DATA': SEGMENT TOO LARGE“的错误,怎么解决?

已经将单片机修改为64k... 已经将单片机修改为64k 展开
 我来答
long1209龙是我
2018-03-30 · TA获得超过2.9万个赞
知道大有可为答主
回答量:162
采纳率:0%
帮助的人:86万
展开全部

用keil写程序时出现错误解决方法:

1、在菜单栏的flash选项下选择configure flash tools子菜单出现如下界面选择对应的芯片就可以了。

谜一样的人_bd
2012-11-16 · TA获得超过314个赞
知道答主
回答量:75
采纳率:0%
帮助的人:67.1万
展开全部
如果你定义的数组不用更改就用 uchar code XX[10]=

根据你数据的用处,你可以有以下几种选择:
data:直接寻址的片内RAM区低128B(00H~7FH)

bdata:片内RAM的可位寻址区(20H~2FH),允许字节和位混合访问

idata:单片机间接访问的片内RAM区,允许访问全部片内RAM

pdata:Ri间接访问的片外RAM的低256B(00H~FFH)

xdata:用DPTR间接访问的片外RAM,允许访问全部64KB片外RAM(0000H~FFFFH)

code:单片机的64KB程序存储区ROM
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一剑出血
高粉答主

2012-11-15 · 醉心答题,欢迎关注
知道大有可为答主
回答量:5.7万
采纳率:78%
帮助的人:1.6亿
展开全部
你大概还没分清ROM和RAM。
另外你需要知道51核直接寻址的内部ram只有128字节。
追问
嗯,我不管那么多,我只想编译这个程序,现在编译不了了,解决办法
追答
那得看你用的什么芯片,有些什么资源。

对于基本51来说,将部分全局变量声明到间接寻址空间。例如
unsigned char idata abc[16];
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式