打印

这段I2C程序谁懂啊?

[复制链接]
1679|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chriecc|  楼主 | 2008-6-25 18:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
下面那个((address&0x7ff)/256)是什么意思?



void write(unsigned int address,unsigned char dd){
    unsigned char ddd;
    ddd=((address&0x7ff)/256)<<1;
    s24();wd24(0xa0|ddd);scl=0;wd24(address);scl=0;wd24(dd);scl=0;p24();
    time=0;                    //time为定时器时间参考,time增加1代表1ms,如果没有用定时器,取消该行
    while (1) {
        s24();
        wd24(0xa0|ddd);
        sda=1;
        if (sda==0) break;
        if (time>10) break;    //此行防止由于eeprom器件损坏后的死循环
        scl=0;
    }
}

相关帖子

沙发
NE5532| | 2008-6-25 22:02 | 只看该作者

算页面地址?

使用特权

评论回复
板凳
jjk009| | 2008-6-26 13:29 | 只看该作者

回楼上,不知道啊,但这段是I2C通用程序,但这里看不懂啊

使用特权

评论回复
地板
kanprin| | 2008-6-26 14:43 | 只看该作者

不是通用程序

2楼已经告诉你答案了,这程序只适用于页大小为256的器件。

使用特权

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

本版积分规则

1

主题

1

帖子

0

粉丝