[技术问答] 怎样解释E2PROM读操作

[复制链接]
912|3
 楼主| xukng 发表于 2020-8-15 12:35 | 显示全部楼层 |阅读模式
for (u8Count = 0; u8Count <PAGE_SIZE; u8Count++)
    {
        set_AA;                             /* Set Assert Acknowledge Control Bit */
        clr_SI;
        while (!SI);
        if (I2STAT != 0x50)                 /* 0x50:Data byte has been received; NOT ACK has been returned */              
        {
                                                I2C_Reset_Flag = 1;
            printf("\nI2C 'No Ack' error");
                                                goto Read_Error_Stop;
        }
      
        if (I2DAT != u8DAT)                 /* Send the Data to EEPROM */   
        {
                                                I2C_Reset_Flag = 1;
                                                printf("\nI2C 'Read data' error");
            goto Read_Error_Stop;
        }
        u8DAT = ~u8DAT;
    }
 楼主| xukng 发表于 2020-8-15 12:37 | 显示全部楼层
if (I2DAT != u8DAT)                 /* Send the Data to EEPROM */
这句里面有啥操作吗,他之前并没有赋值语句,况且这时候是读操作,怎么还是发送数据给EEPROM
CosOxygen 发表于 2020-8-18 20:40 | 显示全部楼层
硬件IIC吗?
jasontu 发表于 2020-8-19 08:19 | 显示全部楼层
在规格书上面有I2C STATE CODE MASTER/SLAVE WRITE/READ 状态机图,搭配它看比较清楚。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

13

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部