请教关于KEIL如何正确设置BANK编译超过64K的程序?

[复制链接]
 楼主| andypen116 发表于 2010-12-14 17:43 | 显示全部楼层 |阅读模式
现在程序已经大于64K。后来改用了新华龙的C8051F125的单片机,内置是128K的ROM,文档上写是分4块CODE块,每个块是32K。但是不知道如何去设置KEIL里面的CODE BANK,老是失败,请教高手指点一下,,希望详细点,谢谢!~~
ayb_ice 发表于 2010-12-15 08:23 | 显示全部楼层
原厂例程
shell.albert 发表于 2010-12-15 09:09 | 显示全部楼层
设置Keil的编译模式为Compact或Large就可以了。
ayb_ice 发表于 2010-12-15 09:15 | 显示全部楼层
LS
和模式没有关系
 楼主| andypen116 发表于 2010-12-15 17:32 | 显示全部楼层
3# shell.albert

这个和模式没有关系,设置成LARGE也只能编译64K的,所以还是要设置code bank,但是不知道具体设置,请高手指教!~
lws 发表于 2010-12-15 18:14 | 显示全部楼层
1.找到L51_BANK.A51文件加到工程中
2.找到STARTUP.A51文件最后 EXTRN CODE (?B_SWITCH0) CALL ?B_SWITCH0 ; init bank mechanism to code bank 0 原来是注释掉的,恢复有效
3.剩下的就是设置了,看下图


图片凑合看吧
要是还不会站内消息。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| andypen116 发表于 2010-12-16 18:45 | 显示全部楼层
好的,非常感谢,我明天去试试!~~~
 楼主| andypen116 发表于 2010-12-16 18:58 | 显示全部楼层
像common bank1,bank2,bank3里面的文件大小是不是要平分均匀呢?
lws 发表于 2010-12-17 10:29 | 显示全部楼层
具体你还要看一下编译生成的M51文件,如果某个BANK溢出有提示的。
 楼主| andypen116 发表于 2010-12-19 12:41 | 显示全部楼层
非常感谢lws。您的方法编译通过。如果还有什么问题在像您请教
xwj 发表于 2010-12-19 14:45 | 显示全部楼层
不错,建议加发裤子
baiyunfei.k.f 发表于 2010-12-22 21:14 | 显示全部楼层
学习了。
自民 发表于 2012-1-13 11:54 | 显示全部楼层
学习了
wjk_0713 发表于 2012-2-6 14:55 | 显示全部楼层
我也出现了这个问题,但是按照lsw的方法,还是不行啊,bank1、bank2、bank3是自动生成的吗?
wjk_0713 发表于 2012-2-6 14:57 | 显示全部楼层
用凌阳的51单片机GPM8F3732做一个在LCD屏显示图片的东西。现在的问题是,我把BMP格式的图片转换成了RGB565格式的一个数组(容量大概500-700K字节),这个数组加到我程序里面后,编译时报错 说访问容量超过了64K,GPM8F3732片内的FLASH是32K,我又外扩了一个SPI借口的1M的FLASH。然后按照lsw的设置,还是报错。说我的文件数组访问超过64K?
miao_zi 发表于 2014-7-22 12:51 | 显示全部楼层
lws 发表于 2010-12-15 18:14
1.找到L51_BANK.A51文件加到工程中
2.找到STARTUP.A51文件最后 EXTRN CODE (?B_SWITCH0) CALL ?B_SWITCH0  ...

你好,我的程序大于64K 遇到同样的问题了,想请教一下解决方法。
1.设置的bank = 4; 左侧的文件夹只有bank1 - bank3 是不是common要设置为bank0??
2. 要编译的文件是不是要添加放在不同的bank下面?
miao_zi 发表于 2014-7-22 13:10 | 显示全部楼层
lws 发表于 2010-12-17 10:29
具体你还要看一下编译生成的M51文件,如果某个BANK溢出有提示的。

QQ 541863425。 在做在TinyOS下做Zigbee开发,用的keil交叉编译器,程序大于64K 编译无法通过,看了您的相关帖子,比较受益,但是我自己还没有把问题解决,想要请教一下keil在 编译大于64K时的具体设置。谢谢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

7

帖子

0

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