|
发表于 2022-3-16 12:54:43
|
显示全部楼层
本帖最后由 简燕 于 2022-3-16 15:09 编辑
在标准IIC电路里,SCK和SDA都是双向信号,主机与从机传输数据时,SCK由主机产生,当从机忙,不能继续接收或者发送数据时,从机会把SCK线拉低,阻止主机继续发送时钟.这时主机端需要等待SCK信号恢复为高电平后,才能继续发送时钟.这就是HTU21D的"Hold Master Mode".
对应到HTU21D上,如果采用"保持主机模式",主机在发送完"读取"指令后,从机立即将SCK线拉低,阻止主机继续发送时钟,此时主机必须等待.从机HTU21D完成采集转换,数据准备好后,释放SCK信号线,主机检测到SCK恢复高电平后,继续发送时钟,从机把数据送往SDA线上.
如果软件模拟IIC的代码不完备,不支持对SCK双向信号的处理,则上述过程就无法完成,只能采用HTU21D的"非保持主机模式".
HTU21D,无论是"主机保持模式",还是"非主机保持模式",它都是从机."Hold Master Mode"翻译成"主机保持模式",很别扭,容易产生歧义.
|
|