TI中文支持网
TI专业的中文技术问题搜集分享网站

请问cc2640 I2c 时序问题?

现在使用ti驱动的sensorI2c 稍封装了一下,读写AT24C64 成功了,但是为什么如图所示,每字节间需要空闲大概60us的时间?请问是什么问题导致的

bool At24C64_ByteWrite(uint16_t nAddr,uint8_t nData)
{
    bool ret = true;
    uint8_t nTmp[3] = {0} ;

    if (!SENSOR_SELECT())
    {
        return false;
    }

    nTmp[0] = LO_UINT16(nAddr);
    nTmp[1] = HI_UINT16(nAddr);
    nTmp[2] = nData ;

    ret = SensorI2C_write(nTmp,sizeof(nTmp));

    SENSOR_DESELECT();

    return ret;
}

user3570217:

问题好像是STOP位的时候 SCL没给到高电平,然后超时了

Alvin Chen:

回复 user3570217:

有逻辑分析仪没?或者你用下面的DEMO再试一下。

http://dev.ti.com/tirex/explore/node?node=AAtafPcHhkZJEWnOarFQhA__krol.2c__LATEST

user3570217:

回复 Alvin Chen:

你好,未波器应该比逻辑分析清晰的,请问你有这个demo读写时的时波器的时序图吗,我这边好确认一下,因为看demo的I2C初始化配置跟目前的无异,

Alvin Chen:

回复 user3570217:

请在下面的帖子中提供更多细节
e2e.ti.com/…/842586

user3570217:

回复 Alvin Chen:

你好,已经回复了,时间间隔是61us在示波器屏幕的右边栏,25us是时间刻度,不是搞错

赞(0)
未经允许不得转载:TI中文支持网 » 请问cc2640 I2c 时序问题?
分享到: 更多 (0)