在PIC16F877中,用大数组碰到的问题.

2020-02-08 12:14发布

原来是用51的,但用客人要求改用877,有一个大数组,Code[50];//用于存放收发的数据码,

编绎时出错:

Error[000]   : Can't find 0x93 words for psect rbss_0 in segment BANK0
Error[000]   : Can't find 0x1F words for psect rdata_0 in segment BANK0
Error[000]   : Can't find 0x7 words for psect temp in segment COMBANK
Error[000]   : Can't find 0x2 words (0x2 withtotal) for psect code_ptr in segment BANK0

网上查了,应是bank0不够用了,但我这的个数组要不能拆分,大家给些意见,有什么为法.
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
wmm20031015
1楼-- · 2020-02-09 14:40
用PIC就没得救了,数组不能跨BANK的,拆开放吧
qllaoda
2楼-- · 2020-02-09 15:03
如果你非要用PIC,那就用16位或32位的PIC吧,那就没有这样的问题了,PIC24/disPIC30/disPIC33/PIC32系列都可以
bbsniua
3楼-- · 2020-02-09 15:50
最大试过把一页搞成一个数组(我用16F690,数组为80个)
liang_work
4楼-- · 2020-02-09 18:06
回复【9楼】bbsniua 鹏
最大试过把一页搞成一个数组(我用16f690,数组为80个)
-----------------------------------------------------------------------

80个没有问题,但上了100,就不行了.
再看了一下,发现忘记说了,原来的Code[50] 是int的.
su_mj000
5楼-- · 2020-02-09 20:03
 精彩回答 2  元偷偷看……
ic001
6楼-- · 2020-02-09 22:23
回复【楼主位】liang_work
-----------------------------------------------------------------------

用PIC还是非常好的

一周热门 更多>