书面核查
将数据写入到DS1977 iButton的,暂存器,必须使用作为中间存储。第一次
1-Wire总线主机发出Write Scratchpad命令来指定所需的目标地址,
其次是数据被写入暂存器。在一定条件下(见写
暂存器命令)的1 -Wire主机将接收命令的倒CRC16 ,
地址和数据在写入暂存器命令序列结束。认识到这一点CRC
值时, 1-Wire主机可以把它比作自己的计算结果,如果决定价值
沟通是成功的,继续执行复制暂存器命令。如果在1-Wire
主机不能接收CRC16 ,它具有发送Read Scratchpad命令读回
暂存器来验证数据的完整性。作为序言暂存器数据时, DS1977的iButton
重复该目标地址TA1和TA2 ,并发送E / S寄存器的内容。如果PF标志
设置,数据没有正确的暂存器或有势力的损失,因为数据是
最后写入暂存器。 1- Wire主机不需要继续阅读;它可以启动一个
新的审判将数据写入暂存器。同样,一组AA标志连同清除PF标志
表示该写命令不是由设备识别。如果一切正常,
这两个标志都清零,结束偏移指示的最后一个字节的写入地址
暂存器。现在的1-Wire主机可以继续读取和验证每一个数据字节。后
1 -Wire主机完成数据校验,它发送Copy Scratchpad命令。这
命令必须跟随三个地址的数据寄存器TA1 , TA2和E / S 。
1- Wire主机可以通过读取暂存器获得这些寄存器的内容或导出
它从目标地址和数据量将被写入。只要DS1977 iButton的
收到这些字节正确和1 - Wire主机提供了一个可以接受的密码,
在DS1977将暂存器中的数据复制到所需位置,开始在目标
地址。
记忆和控制功能
在DS1977支持以下功能:
写便签( iButton的版本)
读暂存器( iButton的版本)
复制暂存器与密码(仅iButton的版本)
阅读与记忆密码( iButton的版本)
确认密码( iButton的版本)
以下页面提供了这些功能的简短的讨论。
对于详细的流程图
请参考图?? 。
该TA1 , TA2 , E / S的逻辑在节中描述
地址寄存器和
传输状态。
写暂存器命令[0Fh ]
发出Write Scratchpad命令后, 1 -Wire主机必须首先提供2个字节
目标地址,然后将数据写入暂存器。的数据将被写入到
暂存器开始的字节偏移量( T5 : T0) 。结束偏移量( E5 : E0)将字节偏移量
其中, 1 -Wire主机停止写入数据。只有完整的数据字节被接受。如果最后一个数据字节
是不完全的内容将被忽略,并且局部字节标志PF将被设置。当写入
密码地址,芯片的内部电路将迫使3至少显著地址位设置为0 。
只有完整的8个字节的密码被接受。结束偏移量将是07或0F ,视
密码(S)以被改变。
当执行写暂存器命令的CRC发生器DS1977 iButton的内
(见图??)在整个数据流计算CRC ,始于命令代码和
在由1 -Wire主机发送的最后一个数据字节结束。使用CRC16生成此CRC
首先清除CRC发生器,然后在命令代码( 0FH )转移多项式
Write Scratchpad命令,目标地址TA1 TA2 ,并通过1-Wire总线所提供
船长和所有的数据字节。 1- Wire主机可能结束在任何Write Scratchpad命令
时间。但是,如果结束偏移量为3Fh时, 1- Wire主机可发送16个读时隙和意志
接收由DS1977 iButton的产生的CRC校验码。
第5页
1/31/03