读寄存器的标准流程为:
- Master发送I2Caddr(7bit)和 W操作1(1bit),等待ACK
- Slave发送ACK
- Master发送reg addr(8bit),等待ACK
- Slave发送ACK
- Master发起START
- Master发送I2C addr(7bit)和 R操作1(1bit),等待ACK
- Slave发送ACK
- Slave发送data(8bit),即寄存器里的值
- Master发送ACK
- 第8步和第9步可以重复多次,即顺序读多个寄存器
图例:
读一个寄存器:
读一个寄存器
读多个寄存器:
读多个寄存器
文 |力卉编程
网友评论