打印
[PIC®/AVR®/dsPIC®产品]

PIC16F887的内存分配问题

[复制链接]
2428|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wxyicc|  楼主 | 2013-10-25 10:36 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
在PIC16F887里面,有一些保存数据的地址,比如:
RD_EEPROM(0x90,0x03,&roust[0]);
RD_EEPROM(0x94,0x03,&roust[0]);
RD_EEPROM(0x9c,0x03,&roust[0]);
RD_EEPROM(0xa0,0x03,&roust[0]);

这个0x90,0x94 ,0x9c, 0xa0 这些地址是哪个BANK分配的?
麻烦大侠们指点指点,感谢感谢!

沙发
huangxz| | 2013-10-25 13:57 | 只看该作者
eeprom地址是自己分配的吧,

使用特权

评论回复
板凳
wxyicc|  楼主 | 2013-10-25 14:00 | 只看该作者
huangxz 发表于 2013-10-25 13:57
eeprom地址是自己分配的吧,

恩,但是我不知道是从哪个寄存器里面分出来的:bank0 bank1 bank2……

使用特权

评论回复
地板
yewuyi| | 2013-10-25 14:19 | 只看该作者
你应该找到RD_EEPROM(0x90,0x03,&roust[0]);他们的原型函数看看。

这个函数在库函数里面似乎没有,是谁自己写的吧?

使用特权

评论回复
5
yewuyi| | 2013-10-25 14:19 | 只看该作者
如果是向EEPROM存数或读数,则一般和BANK无关

使用特权

评论回复
6
Rain_King| | 2013-10-26 15:20 | 只看该作者
bank分配的是变量地址吧,这个是没法保存数据的吧,EEPROM是将数据写入到数据 EEPROM上的吧,不过如果你是将数据写入到闪存程序存储器上,这个也只是改变程序的代码吧,没听说可以将数据写到数据存储器,难道是我理解出错了么

使用特权

评论回复
7
Rain_King| | 2013-10-26 15:29 | 只看该作者
本帖最后由 Rain_King 于 2013-10-26 15:32 编辑


我是这样理解的,下面有四个图,第一个和第二个是程序存储器和数据存储器,这就相当于电脑的硬盘和内存,这个数据存储器是需要分bank的。第三张和第四张是数据EEPROM的介绍,但是这里也只是说可以把数据存储在数据EEPROM 和闪存程序存储器,这里的数据EEPROM 和闪存程序存储器都相当于电脑的硬盘吧,没有听说可以将数据写入到bank上啊,难道我理解有问题了么,欢迎指出错误啊........

第一张图


第二张图



第三张图


第四张图

使用特权

评论回复
8
wxyicc|  楼主 | 2013-10-28 10:38 | 只看该作者
yewuyi 发表于 2013-10-25 14:19
你应该找到RD_EEPROM(0x90,0x03,&roust[0]);他们的原型函数看看。

这个函数在库函数里面似乎没有,是谁自 ...

恩,把数据写入某个地址

使用特权

评论回复
9
wxyicc|  楼主 | 2013-10-28 10:40 | 只看该作者
Rain_King 发表于 2013-10-26 15:29
我是这样理解的,下面有四个图,第一个和第二个是程序存储器和数据存储器,这就相当于电脑的硬盘和内存, ...

谢谢,你的回答真仔细,是我理解错了

使用特权

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

本版积分规则

4

主题

19

帖子

1

粉丝