微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 关于iic芯片24c02应答的一个小问题。

关于iic芯片24c02应答的一个小问题。

时间:10-02 整理:3721RD 点击:
在学习iic的时候,把写好的程序下载到板子后,发现每次从24c02中取出的数都是写入数据的一半,查了很久发现是程序中少写了一个应答信号(下面红色部分),出错部分程序如下:
uchar read_add(uchar address)
{
        uchar date;
        start();
        write_byte(0xa0);
        response();
        write_byte(address);
        response();
        start();
        write_byte(0xa1);
        response();
        date=read_byte();
        stop();
        return date;
}

我猜想是读取的时候只读了八位数据中的七位,所以数据才会变成写入的一半,可能是把应答信号“0”当成了一位数据?
但也不知道是否是那样,所以来请教各位

指定地址读的数据帧格式


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top