知识杂货铺

不卖切糕

View on GitHub
13 March 2017 04:15

更了解总线协议 - IIC读取MPU6050 ID号

by 宋强

这几幅图象是使用STM32单片机使用IIC读取MPU6050的ID号的过程。,黄色线代表SDA,蓝色线代表SCL。

(0)是开始信号,两种信号都为高时,SDA先拉低,之后SCL再拉低,下图即是IIC总线的起始和停止条件。

同时再介绍一下整个数据传输过程

数据传输时,先传输开始信号,在传输设备地址,等待响应信号,再传输设备的寄存器地址,同时通过这个地址也能决定读写,之后再等待响应信号,响应信号之后按照协议每接受一个字节数据就发送一次响应信号,最后发送结束信号。

这个时候再看过程1的图,从1到8,在每一个SCK的上升沿采集数据,数据为11010000b,即0xD0,MPU6050的地址0x68左移一位达到的,之后9和10这里,SCK拉高,SDA上拉,变为输入模式,等待SDA被从机拉低响应。

过程2开始给从机发送寄存器地址,从11到18,数据为01110101b,即0x75,是WHO_AM_I寄存器的地址。

tags: IIC