1808|0

80

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

请问以下程序划线处该如何解释?谢谢 [复制链接]

//接受一个字节子程序,出口为接受到的数据R_DATA
int RECEIVE()
  {
    int R_DATA=0,sz,i;
    *PFDATDIR=*PFDATDIR & 0xFFDF;             //SDA为输入
    *PFDATDIR=*PFDATDIR & 0xFFFE;             //SCL为0
    delay(100);
    for(i=0;i<8;i++)  
        {
    *PFDATDIR=*PFDATDIR|0x0001;              //SCL=1
    R_DATA=R_DATA<<1;
    delay(100);
    sz=*PFDATDIR & 0x0002;                   //取出SDA上的值
    if(sz==0) R_DATA &= 0xFFFD;              //该位为0,1101
    else R_DATA |= 0x0002;                   //该位为1,0010
    delay(100);
    *PFDATDIR=*PFDATDIR &0xfffe;             //SCL=0
           }
   *PFDATDIR=*PFDATDIR | 0x0020;             //SDA设置为输出
   return(R_DATA);
  }
点赞 关注

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表