[国产单片机] 请教,如何在keil 调试软件里编译调试大于64K的程序代码呀?

[复制链接]
 楼主| wang2008go 发表于 2007-10-10 22:40 | 显示全部楼层 |阅读模式
各位大虾,能否请教一下我用的是8052单片机,如何在keil uVision3 里编译大于64k代码空间和大于64K的数据空间???程序已经在DOS里编译通过了,现在想用keil里的调试工具,进行调试,所以需要在keil里编译。使用的是外部存储器,分别为1M的ROM和1M的RAM外部存储器。使用P1口做为扩展地址口线。
程序是用汇编写的,
修改“L51_BANK.A51”里面的
?B_NBANKS       EQU  64 
?B_MODE         EQU  0
?B_VAR_BANKING  EQU  1
?B_FIRSTBIT     EQU  6 

我现在编译出现报错如下:

AX51 FATAT ERROR -
ERROR:LIMIT EXCEEDED:MODE THAN 16000  SYMBOLS

希望大家能提供好的解决方法,谢谢!!!
starlite_jason 发表于 2007-10-12 11:30 | 显示全部楼层

程序空间分BANK肯定是没有问题

但是RAM是否也可以就不清楚了,CODE段分BANK可以直接在KEIL的设置里修改
 楼主| wang2008go 发表于 2007-10-12 12:40 | 显示全部楼层

谢谢2楼,我试过了,还是一样

我设置了BANKS为64.
可是不知道RAM怎么设呀?
RAM只能设3块空间为:0x0000--0xffff
还是编译报同样的错
starlite_jason 发表于 2007-10-12 12:48 | 显示全部楼层

BANK设置是个挺复杂的东西

你要把你的程序分配在不同的BANK,在不同BANK的代码间不能有任何相互的代码的访问(包括常量,函数调用),要调整好公共空间的大小
 楼主| wang2008go 发表于 2007-10-15 12:31 | 显示全部楼层

starlite_jason,谢谢你!

每个程序都有调用关系呀!
不知道怎么办了,
听说报这样的错是RAM空间不足导致的.
可是不知道怎么才能把RAM空间增大呀.
谢谢你,能和我谈论.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

7

帖子

0

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

1

主题

7

帖子

0

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