导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→[求助]再问:关于W29C040的读写

* 64488: [求助]再问:关于W29C040的读写

   relaxoo 
relaxoo发表的帖子 

 [求助]再问:关于W29C040的读写

此主题相关图片如下:
按此在新窗口浏览图片

单片机ADuC812可以扩展16M存储器,24位地址线A0-A23,三个数据指针DPL(A0-A7),
DPH(A8-A15),DPP(A16-A23),技术资料上ADuC812扩展存储器如图右边部分所示。

W29C040为512Kx8的flash存储器,19位地址A0-A18。A0-A7为页内地址,A8-A18为页地
址,中8位A8-A15和高3位A16-A18通过锁存器锁存。原理图如图左部分所示:

我的问题是如何确定W29C040的页地址(A8-A18)呢?
例如:我想把一个数组data_arr[10]写入第三页中去
void write(unsigned char page_addr unsigned char addr)
{
uchar len;
delay(2000);
Flash_addr(0x5555)  =  0xaa;
Flash_addr(0x2aaa)  =  0x55;
Flash_addr(0x5555)  =  0xa0;

for(len=0;len  <0x0a;len++)
    {
     XBYTE(addr+page_addr*0xFF)=data_arr[len];
      addr += 1;}
   delay(2000);
}

main()
{
write(0x02,0x50);
while(1);
}

这里XBYTE(addr+0x02*0xFF)=data_arr[len];怎么不能把数组写入第二页呢?


发表时间:2004年10月15日10:48:40

  
回复该帖

本主题共有 2 帖,分页:>>>>>该主题的所有内容[2]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:高薪招聘开发工程师[B]   高薪招聘开发工程师[/B] &n
[下一篇帖子]:问个很菜的问题:关于icl7106我想利用7106的30脚作为模拟地AGND,这样整个系统就不用稳压