打印

求大神指导。。。。写不进去啊。。。附程序

[复制链接]
1080|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chicheng10|  楼主 | 2014-11-18 13:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
写CYPRESS的疑问,芯片型号为256-Kbit(32K x 8)NVSRAM。
我用AT89C51单片机往芯片写数,因为需要,我们把芯片的地址位A0~A6(A0~A4为行,A5~A6为列,其他没用)用拨码开关相连,控制地址位。sbit OE=P3^7;// 读使能,sbit CE=P3^5;//芯片使能,sbit WE=P3^6;//写使能,利用以下程序对芯片写数据,但怎么也不行,望大神求助!!!写的时候先把地址拨好了。。。。。。。。。。。



#include <REGX51.H>
#include "intrins.h"
#define   uint  unsigned int
void delay(uint xms);

sbit OE=P3^7;// 读使能
sbit CE=P3^5;//芯片使能
sbit WE=P3^6;//写使能

void main()
{
   CE=1;
   OE=1;
   WE=1;
   delay(10);
    while(1)
  {
   P0=0X00;
   OE=1;
   delay(1);
   CE=0;
   delay(1);
   WE=0;
   delay(1);
   WE=1;
   delay(1);
   CE=1;
   delay(1);
   P0=0XFF;
   while(1);
  }
}

void delay(uint xms)
{
   uint i,j;
for(i=xms;i>0;i--)
     for(j=110;j>0;j--);
}


沙发
chicheng10|  楼主 | 2014-11-18 13:52 | 只看该作者
数据通过P0口送进去的

使用特权

评论回复
板凳
chicheng10|  楼主 | 2014-11-18 16:20 | 只看该作者
没有大神吗

使用特权

评论回复
地板
chicheng10|  楼主 | 2014-11-19 18:51 | 只看该作者
目前。。每次刚写进去能够读出来。。但过一会就变成0101或者1010只用了四位数据位。。而且断电在上电也会变成0101好或者1010。。就比如我写1100,,断开we后立即测数据位出来的是1100..但一会以后就不对了变成1010了。。求大神指导

使用特权

评论回复
5
chicheng10|  楼主 | 2014-11-20 11:22 | 只看该作者
现在能写进去。。读出来。。但掉电以后还是不行。。再上电什么都没了

使用特权

评论回复
6
chicheng10|  楼主 | 2014-11-20 13:32 | 只看该作者
还有一个问题。。就是读出来的数据不稳定。。比如测量某个脚是高电平。。但这个电瓶会变动。。会往下降

使用特权

评论回复
7
chicheng10|  楼主 | 2014-11-22 14:03 | 只看该作者
问题初步解决。。。

使用特权

评论回复
8
chicheng10|  楼主 | 2014-11-22 15:30 | 只看该作者
问题解决了。。看来是自问自答了。。。。。

使用特权

评论回复
9
chicheng10|  楼主 | 2014-12-14 11:10 | 只看该作者
亲,请教一个问题,,我现在也在用这个存储器,能读能写,但读的时候过一会读出来的会变动,,复位一下又正常了、
求教

使用特权

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

本版积分规则

1

主题

11

帖子

0

粉丝