STM32的I2C在读时要发送两次起始信号吗,可是手册上说只有在10位主接收时才有两次起始信号啊,谢谢

2025-04-13 11:08:39
推荐回答(3个)
回答1:

stm32 把I2C的每一个状态都分的很细,在读之前要进行写操作,而这一部分则被划分到写的过程中去了,手册上的接收传送序列图指的就是写操作之后的那部分读操作。
I2C读的完整过程为
(启动总线,送器件地址,送操作地址){这部分是读之前的写操作}
启动总线,发送器件地址(读),读取数据,停止总线。(这部分就是手册上的主接收传送序列图)

解释的不够清晰,希望对你有帮助。

回答2:

stm32 把I2C的每一个状态都分的很细,在读之前要进行写操作,而这一部分则被划分到写的过程中去了,手册上的接收传送序列图指的就是写操作之后的那部分读操作。
I2C读的完整过程为
(启动总线,送器件地址,送操作地址){这部分是读之前的写操作}
启动总线,发送器件地址(读),读取数据,停止总线。(这部分就是手册上的主接收传送序列图)。

回答3:

STM32的I2C口有问题,建议自己用IO口模拟I2C,官方都说I2C有问题