打印
[国产单片机]

请教,如何在keil 调试软件里编译调试大于64K的程序代码呀?

[复制链接]
3443|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
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的代码间不能有任何相互的代码的访问(包括常量,函数调用),要调整好公共空间的大小

使用特权

评论回复
5
wang2008go|  楼主 | 2007-10-15 12:31 | 只看该作者

starlite_jason,谢谢你!

每个程序都有调用关系呀!
不知道怎么办了,
听说报这样的错是RAM空间不足导致的.
可是不知道怎么才能把RAM空间增大呀.
谢谢你,能和我谈论.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

7

帖子

0

粉丝