| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 7380 人关注过本帖
标题:AT24C1024 EEPROM怎样复位
只看楼主 加入收藏
小焦叔叔
Rank: 1
来 自:广西 河池
等 级:新手上路
帖 子:59
专家分:2
注 册:2020-2-15
结帖率:78.57%
收藏
 问题点数:0 回复次数:2 
AT24C1024 EEPROM怎样复位
我在制作第二台掌上电脑,用了2个AT24C1024,之前我的第一台用1个AT24C1024EEPROM的试验用的掌上电脑的AT24C1024可以读写数据,但是第二台器件寻址不了,仔细研究说明书了,发现说明书说AT24C1024可以复位,于是就试了一下,添加了复位函数,但是还是寻址不了。这是我写的IIC部分程序片段:

void Init_IIC()
{
   P0M1=0x03;
   P0M0=0x03;
   SCL=0;
   SDA=0;
}

void Reset_IIC()
{
   unsigned char i;

   SCL=0;
   SDA=1;
   for(i=0;i<16;i++)
   {
      SCL=1;
      Delay_uS();
      //Feleer();
      while(SDA==0);
      //Feleer();
      SCL=0;
      Delay_uS();
   }
   //Start_IIC();
   //Feleer();
}

void Start_IIC()
{
   SDA=1;
   Delay_uS();
   SCL=1;
   Delay_uS();
   SDA=0;
   Delay_uS();
   SCL=0;
   Delay_uS();   
}

void Stop_IIC()
{
   SCL=0;
   Delay_uS();
   SDA=0;
   Delay_uS();
   SCL=1;
   Delay_uS();
   SDA=1;
}

void Addr_Dive(unsigned char addr_dive,bit p0,bit opr)
{
   //Write_Byte(addr_dive|((unsigned char)p0)<<1|opr);
   Write_Byte(0x50<<1);
   //Feleer();
   while(Read_ACK());
   Feleer();
}

void Addr_Word(unsigned char addr_word)
{
   Write_Byte(addr_word);
   while(Read_ACK());
}

void Write_Byte(unsigned char byte)
{
   unsigned char i;

   for(i=0;i<8;i++)
   {
      SCL=0;
      Delay_uS();
      if(byte&(0x80>>i))
      {
         SDA=1;
      }
      else
      {
         SDA=0;
      }
      Delay_uS();
      SCL=1;       //上升沿写入
      Delay_uS();
   }
   SCL=0;
}

bit Read_ACK()
{
   bit ack;

   SCL=0;
   Delay_uS();
   SDA=1;
   Delay_uS();
   SCL=1;
   Delay_uS();
   SCL=0;          //下降沿输出
   ack=SDA;

   return(ack);
}

void Delay_uS()
{
   ;
}

搞了好久还是没寻址成功......哪位做过2片AT24C1024读写的网友,说明书上面关于复位的2点说明是什么意思?有空的时候可否指点一下,谢谢啦!!!

图片附件: 游客没有浏览图片的权限,请 登录注册


图片附件: 游客没有浏览图片的权限,请 登录注册


[此贴子已经被作者于2020-7-12 23:23编辑过]

搜索更多相关主题的帖子: while bit char void unsigned while char unsigned bit void 
2020-07-12 23:22
小焦叔叔
Rank: 1
来 自:广西 河池
等 级:新手上路
帖 子:59
专家分:2
注 册:2020-2-15
收藏
得分:0 
是硬件的问题,我拿这个程序去试另一台掌上电脑,一切正常。

自学成才
2020-07-14 23:56
zwk34
Rank: 2
等 级:论坛游民
帖 子:27
专家分:22
注 册:2011-3-20
收藏
得分:0 
硬件哪里的问题,查到了吗?
2021-02-24 08:38
快速回复:AT24C1024 EEPROM怎样复位
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025341 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved