导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[Dragon0906]求助ds1307不能握手



No.106326
作者:Dragon0906
邮件:dragon0906@163.com
ID:67439
登陆:1次
文章数:5篇
最后登陆IP:
最后登陆:2007/1/18 15:13:17
注册:2007/1/18 15:13:17
财富:100
发帖时间:2007/6/12 15:42:33
发贴者IP:221.215.99.81
标题:Dragon0906:求助ds1307不能握手
摘要:No.106326求助ds1307不能握手 下面是我的I2C的程序,和其他的I2C设备通讯都没有问题,就是唯独和1307握手一直都是失败,请高手来给指点下巴
void Delay(void)
{
unsigned char i;
for(i=0;i  <=2;i++)
{
  ;
}
}
void IC_Start(void)   //启动IC通信
{     //SDA 1 TO 0 While SCL=1
while(Writer_Counter  <=10);
IC_SDA=1;
IC_SCL=1;
  Delay();
IC_SDA=0;
  Delay();
IC_SCL=0;
  Delay();
}
void IC_Stop(void)   //停止IC通信
{
IC_SDA=0;
IC_SCL=1;
  Delay();
IC_SDA=1;
  Delay();
Writer_Counter=0;
}
void IC_Receive_Ack(void)  //接受ACK
{
IC_SDA=1;
IC_SCL=1;
IC_Re_Time=0;
while(IC_Re_Time  <=10)
//while(IC_SDA)
{
  if(IC_SDA==0)
  {
   IC_Err_Flag=0;
   break;
  }
  else
  {
   IC_Err_Flag=1;
  }
}
IC_SCL=0;
Writer_Counter=0;
  //Delay();
}
void IC_Send_NAck(void)   //发送NACK
{
IC_SDA=1;
  Delay();
IC_SCL=1;
  Delay();
IC_SCL=0;
  Delay();
}
void IC_Send_Ack(void)   //发送NACK
{
IC_SDA=0;
  Delay();
IC_SCL=1;
  Delay();
IC_SCL=0;
  Delay();
IC_SDA=1;
}
void IC_Write_Byte(unsigned char Data) //写数据到1307
{
unsigned char i;
unsigned char j;
for(i=0;i  <=7;i++)
{
  j=7-i;
  if(VALBIT(Data,j))
   IC_SDA=1;
  else
   IC_SDA=0;
   Delay();
  IC_SCL=1;
   //Delay();
  IC_SCL=0;
}
IC_SCL=1;
}
unsigned char IC_Read_Byte(void) //从1307读取一 ......

>>返回讨论的主题


  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:16毫秒 最大:7276毫秒 查询6次