在写入事务中,主设备将数据写入 LM95010 中指定地址处的寄存器。写入事务以开始位开始,以 ACK 数据位结束,如图 6-4 所示。
- 器件编号 这是所存取从设备器件的地址。地址“000”是一个广播地址,由所有从设备器件响应。LM95010 可响应发送至器件控制寄存器的广播消息。
- 内部地址 这是 LM95010 中将要写入的寄存器地址。
- 读取/写入 (R/W) “0”数据位表示写入事务。
- 数据位 此位是写入 LM95010 寄存器的数据,由主设备驱动。串行传输数据时,最高有效位优先。数据位数可能随地址的不同而不同,具体取决于 LM95010 中寄存器的大小。这允许基于需要写入的信息优化吞吐量。
- LM95010 支持 8 位或 16 位数据字段,如节 7所述。
- 偶校验 (EP) 此位基于所有先前位(器件编号、内部地址、读取/写入和数据位)和偶校验位本身。对所有先前位进行奇偶校验(1 的数量)并且奇偶校验位必须为偶数,即结果必须为 0。在一个写入事务期间,主设备将 EP 位发送至 LM95010,以便允许 LM95010 在使用接收的数据之前对其进行检查。
- 确认 (ACK) 在写入事务期间,LM95010 会发送 ACK 位,向主设备指示接收到正确的 EP,并且在总线上未检测到冲突(注意请求除外 — 请参阅节 6.3.13)。仅当产生 ACK 位时,才会将写入传输视为“已完成”。LM95010 不会将非肯定确认的事务视为“完成”(即不执行与事务相关的内部操作),并执行以下操作:
- LM95010 器件状态寄存器中的 BER 位置位;
- LM95010 在下一个事务之前,或与下一个事务的开始位一起生成注意请求
主设备也不会将非肯定确认的事务视为“完成”(即不执行与事务相关的内部操作)。在检测到注意请求的来源(在器件状态寄存器中设置了 BER 位的 LM95010)后,主设备可以重复此事务。请注意,SensorPath 协议既不强制也不自动由主设备重新执行事务。ACK 位的值为: