特性特性特性特性
1 of 22
特性特性特性特性 引脚排列引脚排列引脚排列引脚排列
1024位电可编程只读存储器EPROM
采用更为经济的单根信号线加地线的接
口方式
工厂激光刻度的唯一经过测试的64位
注册码8位家族码 + 48位序列码 + 8
位CRC校验码确保准确跟踪每个器
件因为每个器件的注册码不可能相同
内置多点控制器保证兼容于其它
MicroLANTM产品
EPROM划分为四个256位页面用于随
机存贮数据包
为防止数据丢失每个存储页均可进行
永久性的写保护
该芯片具有只添加存储功能当在
EPROM内存储其他数据时也不会破坏
已有数据
结构设计上允许软件来对一个旧存贮页
进行修补数据而不需要新打开一个可
编程页
将控制线地址线数据线电源和可
编程信号线减少至一条线
直接与微处理器的一个口线连接通信
速率可达16.3kbps
8位家族码通知读写器按照DS2502要求
进行通信
当读写器首次上电时进行在线检测应答
低成本TO-92或8引脚SOIC和TSOC
表面贴封装
在-40°C至+85°C温度范围内读取数据
电压范围为2.8V至6.0V在-40°C至
+50°C温度范围内编程电压为11.5V至
12.0V范围
订购信息订购信息订购信息订购信息
DS2502 TO-92封装
DS2502S 8引脚SOIC封装
DS2502P 6引脚TSOC封装
DS2502T 卷带包装的DS2502
DS2502Y 卷带包装的DS2502S
DS2502V 卷带包装的DS2502P
DS2502X1 片芯级封装卷带包装
DS2502
1k位只添加存储器位只添加存储器位只添加存储器位只添加存储器
MicroLAN是Dallas Semiconductor的商标
GND
DATA
底视图
TO-92
DS2502
2 3 1
1
2
3
6
5
4
顶视图
3.7 X 4.0 X 1.5mm
参见机械图部分
TSOC封装
GND
DATA
NC
NC
NC
NC
1
2
3
4
8
7
6
5
NC
NC
NC
NC
NC
NC
DATA
GND
8引脚 SOIC (150 MIL)
www.dalsemi.com
NC
DS2502
2 of 22
硅标签说明硅标签说明硅标签说明硅标签说明
DS2502为1k位只添加存储器可以识别和存储与产品相关的信息这个标签或特殊产品的信
息可以通过最少的接口访问例如微控制器的一个端口引脚DS2502 由一个工厂刻度的注册
码其中包括48位唯一序列码8位CRC校验码和8位家族码09H以及1k位的用户可
编程EPROM组成DS2502 进行编程和读取操作的电源全部来自于1-Wire 通信线
采用1-Wire协议即仅通过一条信号线和一条地线实现数据的串行传输可以对整个器件进
行编程并根据需要加入写保护也可以采用顺序编程该器件多次编程添加新的数据而不
是覆盖已有的数据注意每位只能由逻辑1编程为逻辑0但永远不能从逻辑0改为逻辑1
当某页或某些页不再有效时他们可以被那些驻留在其它页面地址的新数据或更新数据所取代
这种页面地址重定向功能允许软件修补数据从而加强了该器件作为一个独立数据库的灵活性
工厂对每片DS2502刻入的48位序列号保证其唯一性以精确跟踪每个器件常用的TO-92
SOIC或TSOC封装提供了一种紧凑的结构允许采用标准安装设备处理器件在电路板上的安装
或连接典型应用包括存储校准系数维护记录资产跟踪产品修正状态和访问代码等
概述概述概述概述
图1所示方框图说明了DS2502 的主控部分和存储部分之间的关系 DS2502 包括3个数据部
分 164位激光刻度 ROM21024 位EPROM3EPROM 状态字节 对器件读操作
的电源完全来自于1-Wire 通信线当信号线为高时其内部的电容可以存储电荷当1-Wire
为低时该寄生电源放电器件继续保持工作直到1-Wire恢复高时再对寄生电容电
源进行充电在编程期间1-Wire 在平常电压幅度下进行通信在需要编程选择的EPROM位
时产生瞬间的编程脉冲进行编程1-Wire线上必须能够提供12V电压和10mA电流以满足
对EPROM的编程 无论编程电压何时出现在 1-Wire 线上DS2502内部的高电压检测电路
就会产生一个内部的逻辑信号以指示这种状态图2所示为1-Wire 协议的层次结构图总线
主机必须先提供下述四种ROM功能命令之一1Read ROM2Match ROM3Search ROM
4Skip ROM这些命令针对每个器件的64位激光刻度ROM操作能够在1-Wire线上出现多
个器件时辩识出某个特定器件并且能够向主机指示在线器件的数量和类型这些ROM 功
能命令所要求的协议如图9所述在成功执行一条ROM功能命令后操作DS2502的EPROM
部分的存储器功能命令才能生效总线主机就可以发出DS2502指定的5条存储器功能命令之
一以读取或编程不同的数据段这些存储器功能命令的协议如图6所述所有数据的读写都
是低有效位在前
64位激光刻度位激光刻度位激光刻度位激光刻度ROM
每个 DS2502包含有64位长唯一的ROM 码前8 位为1-Wire家族码接下来 48 位为唯
一的序列码最后8位为前56位的CRC校验码如图3所示64位 ROM和 ROM 功能控
制部分使 DS2502可作为一个1-Wire 器件操作遵循1-Wire总线系统所描述的1-Wire 协
议当ROM 功能协议满足后读和编程DS2502的EPROM所要求的存储器功能命令才能有
效该协议见图9 所示的ROM 功能流程图1-Wire 总线主机必须先发出四个ROM功能命令
之一1Read ROM2Match ROM3Search ROM4Skip ROM成功地执行ROM功
能时序后接着总线主机就可以发出DS2502指定的任何一个存储器功能命令见图6
1-Wire是Dallas Semiconductor的注册商标
DS2502
3 of 22
激光刻入ROM的1-Wire CRC校验码由多项式X8 + X5 + X4 + 1生成图4是该CRC校验码生
成器的硬件实现电路关于Dallas Semiconductor的1-Wire循环冗余校验码的其他信息请参
阅Book of DS19xx iButton Standards 用于CRC计算的移位寄存器初始化为0从家族码的最
低有效位起始每次移入一位在处理完家族码的第8位后再移入序列码在序列码的第48
位移入后移位寄存器的内容就是CRC校验码移入8位CRC校验码后移位寄存器应该回
到全0
DS2502方框图方框图方框图方框图 图1
iButton是Dallas Semiconductor的注册商标
DS2502
4 of 22
1-Wire 协议的层次协议的层次协议的层次协议的层次结构图结构图结构图结构图 图2
64 位激光刻度位激光刻度位激光刻度位激光刻度ROM 图3
8位CRC校验码 48位序列码 8位家族码09H
MSB LSB MSB LSB MSB LSB
1-Wire CRC校验码生成器校验码生成器校验码生成器校验码生成器 图 4
DS2502
5 of 22
1024位位位位 EPROM
存储器结构分配图如图5所示表示DS2502的1024位EPROM地址分配表分为4页每页
32个字节当编程存储器时8位暂存器作为一个附加寄存器充当缓冲器数据首先被写在
暂存器里然后通过读取DS2502的8位CRC校验码进行校对以确认数据的正常接收如果
缓冲器的内容是正确的则应该加入编程电压该字节数据就被写入存储器的指定地址这个
过程能够保证编程存储器时的数据完整性读和编程DS2502的1024位EPROM的详细说明参
见存储器功能命令一节
EPROM状态字节状态字节状态字节状态字节
除了1024位数据存储器之外DS2502还提供了其他命令可访问的64位状态存储器
EPROM 状态字节可被读取或编程以便在软件查询DS2502时指示其不同的状态EPROM状
态存储器的首字节包含页面写保护位如果某个写保护位被编程后则将禁止编程位于1024
位主存储区域一旦页面写保护字节被编程则该位对应的32个字节页面将不可能再更换只
能读出
EPROM状态存储器接下来的4个字节为页面地址重新定向字节用于说明1024位EPROM中
某页或多页数据是否无效以及是否被定向到其它的页面地址DS2502的硬件无法决定页面地
址重定向字节的内容这些附加的采用EPROM技术的状态字节每页的位通过编程可由逻辑
1改为逻辑0但不能改回来因此数据需要修改或更新不可能通过简单地重写一页来实现
但如果空间允许可将新页面地址的1位补码写到与旧被替代页面对应的页面地址重定向
寄存器这样该数据页面被重新定向到DS2502的另一个页面
这种结构允许用户软件对EPROM做数据修补只需指明某特殊页面由页面地址重新定向
字节寄存器中指向的页面所替代
如果页面地址重新定向字节为FFH 则主存储器中与该页相关的数据有效如果该字节为其他
十六进制数则其对应的页面数据无效有效数据可在其对应的页面地址重定向字节所指向的
页面中找到例如如果第一页的重新定向字节值为 FDH则说明更新数据存储在第2页里
关于DS2502 EPROM状态存储器读取和编程的详细说明参见存储器功能命令一节
存储器功能命令存储器功能命令存储器功能命令存储器功能命令
图6所示的存储器功能流程图描述了访问DS2502内不同数据段的协议存储器功能控制
部分8 位暂存器和编程电压检测电路组合起来解释总线主机发出的命令并在器件内产生正
确的控制信号主机发出3字节协议包括1个说明操作类型的命令字节和2个指定数据段起
始位置的地址字节命令字节指明是否要对器件读取或写入写数据不仅包括发出正确的命令
序列还应在适当的时候提供12V编程电压执行写序列时数据的一个字节首先被装载到暂
存器然后编程到所选地址写序列通常每次写入一个字节执行读序列时总线主机发出起
始地址便从初始位置读取数据一直读到所选数据段结束或者直到发出复位命令所有由
总线主机向DS2502发送和接收的数据都是低有效位在前
DS2502
6 of 22
DS2502存储器结构分配图存储器结构分配图存储器结构分配图存储器结构分配图 图5
DS2502
7 of 22
存储器功能命令流程图存储器功能命令流程图存储器功能命令流程图存储器功能命令流程图 图6
DS2502
8 of 22
存储器功能命令流程图存储器功能命令流程图存储器功能命令流程图存储器功能命令流程图 图6续
DS2502
9 of 22
存储器功能命令流程图存储器功能命令流程图存储器功能命令流程图存储器功能命令流程图 图6续
DS2502
10 of 22
Read Memory [F0H]
Read Memory读存储器命令用于从1024位EPROM数据段读取数据总线主机在发出命令
字节之后紧跟2字节地址(TA1=(T7:T0), TA2=(T15:T8))以指示起始字节在数据段中的位置
DS2502计算出命令和地址字节生成的8位CRC校验码总线主机读回校验码以确认命令和
起始地址是否被正确接收如果总线主机读到的CRC校验码不正确则必须发出复位脉冲Reset
Pulse重新执行整个时序如果接收的CRC校验码正确总线主机发出读时隙从DS2502
的指定地址开始读取数据一直读到1024位数据段结束或者直到发出复位脉冲当读到存储
空间结束时总线主机发出8个另外的读时隙DS2502将返回从起始字节到存储器的最后字节
所生成的8位CRC校验码总线主机收到CRC校验码后随后的读时隙将一直保持为逻辑1
直到发出复位脉冲任何在读到存储器结尾之前而被复位脉冲结束的读操作均无8位CRC校
验码响应
通常可以将每页数据的16位CRC校验码存储起来以便快速无误码地传输数据从而避
免由于判断接收数据正确是否而进行的多次读取某页的操作参阅Book of DS19xx iButton
Standards的第7章1-Wire环境下推荐使用的数据结构如果CRC值已经嵌入在数据中那
么操作Read Memory命令期间在读到存储空间结尾时就可以发出复位脉冲
Read Status [AAH]
Read Status读状态命令用于从EPROM状态数据段读取数据总线主机在发出命令字节之
后紧跟2字节地址(TA1=(T7:T0), TA2=(T15:T8))用以指出起始字节在数据段中的位置
DS2502计算出命令和地址字节构成的8位CRC校验码总线主机读回校验码以确认命令和
起始地址是否被正确接收如果总线主机读到的CRC校验码不正确则必须发出复位脉冲重
新执行整个时序如果接收的CRC校验码正确总线主机发出读时隙并从指定的地址开始读
取DS2502数据一直读到EPROM状态数据段结束从该点开始总线主机将接收到8位CRC
校验码该CRC校验码等于从起始字节到工厂编程的最后字节为00H的所有数据移位到
CRC生成器后产生的结果
由于EPROM状态信息可能被修改导致不可能一次性编程数据且包含了始终有效的相关CRC
校验码所以Read Status命令提供了这个基于且与当前存储在EPROM状态数据段的数据保
持一致的8位CRC码
在读完8位CRC校验码后总线主机将一直从DS2502读到逻辑1直至发出复位脉冲为止
Read Status命令序列可以随时终止只需发出复位脉冲
Read Data/Generate 8位位位位CRC [C3H]
Read Data/Generate读数据/生成8位CRC命令用于从1024 位EPROM数据区域读取数据
总线主机在发出命令字节之后紧跟2字节地址(TA1=(T7:T0), TA2=(T15:T8))用以指出起始
字节在数据段中的位置 DS2502计算出命令和地址字节构成的8位CRC校验码总线主机读
回校验码以确保接收的命令字和起始地址的正确性如果总线主机读到的CRC校验码不正确
则必须发出复位脉冲重新执行整个时序如果接收的CRC校验码正确总线主机发出读时隙
并从指定地址开始读取DS2502数据一直读到32字节页面结束从那点开始如果总线主机
发出额外的8个读时隙将接收到8位CRC校验码该值为从初始字节到当前页面的最后一个
字节数据移位到CRC生成器后生成的结果一旦收到8位CRC校验码又可以从1024位EPROM
的下一页开始读取数据该过程能够继续执行直到最后一页及其相伴随的CRC校验码被总线
主机读出为止因此每页数据都可认为是33字节长其中32个字节是用户编程到EPROM
的数据另1个字节为页末自动生成的8位CRC校验码
DS2502
11 of 22
这种读取方式明显地区别于简单地读取每页数据直至地址空间结束的Read Memory命令
Read Memory命令只在存储空间结束时产生8位CRC校验码该CRC码通常会被忽略这是
因为在多数情况下对1024位EPROM某页编程时用户都会在该页末存储一个数据自身生成的
16位CRC校验码
Read Data/Generate 8位CRC命令提供了一种位定向优于页定向的读功能在页面范
围内的1024位EPROM信息会随时而变使得不可能实现对页面编程1次就包含一个始终有效
的相关CRC码因此通过DS2502生成和提供的8位CRC校验码基于且与1024位EPROM
数据段内每个页面的当前数据相一致的CRC码Read Data/Generate 8位CRC命令就能够判断
每个页面的正确性在读完最后一页的8位CRC校验码后总线主机将一直从DS2502读到逻
辑1直至发出复位脉冲为止Read Data/Generate 8位CRC命令序列可以随时终止只需发出
复位脉冲
Write Memory [0FH]
Write Memory写存储器命令用于编程1024位EPROM数据段总线主机在发出命令字节之
后紧跟2字节地址(TA1=(T7:T0), TA2=(T15:T8))和1个字节的数据D7:D0 DS2502由命
令地址和数据字节计算出8位CRC校验码总线主机读回该值以确认其接收的命令字起
始地址和数据字节是否正确
DS2502的最高起始地址为 007FH如果总线主机发送的起始地址比该值还高则芯片内部电
路会将9个地址高位全置为0这将使DS2502计算的CRC值与总线主机计算的CRC值不同
以指示出错
如果总线主机读到的CRC校验错误则必须发出复位脉冲重新进行这个序列若主机接收到
的CRC码正确则总线主机发出编程脉冲1-Wire总线上12V脉冲保持480 s在编程之
前未编程的1024位EPROM均为逻辑1如果总线主机是将其设为逻辑0编程脉冲出现后
被选中的字节对应的位被编程为逻辑0
在480 s编程脉冲过后数据线回到5V电平总线主机发出8个读时隙以验证相应位是否
被编程DS2502将响应被选中EPROM地址按照最低有效位在先格式发送的数据该字节包括
写到这个EPROM数据地址的所有字节的逻辑与如果EPROM数据字节在某些位为1而总
线主机发出的字节对应为0则应该发出复位脉冲当前字节地址需要被重新编程如果DS2502
EPROM数据字节在与数据字节相同位置的位为0说明编程成功DS2502自动将地址计数器
加1指向1024位EPROM的下一个字节 新的2字节地址中的最低有效字节也作为起始值
载入8位CRC生成器总线主机将发出8个写时隙送入下一数据字节
DS2502
12 of 22
DS2502将数据接收到暂存器同时将数据移到CRC生成器此时生成器中已经预加载了当前
地址的最低有效字节因此8位CRC的结果由新数据和新地址的最低有效字节生成提供完数
据后总线主机使用8个读时隙从 DS2502读回8位CRC码以确认地址累加及接收数据是否
正确若CRC错误则必须发出复位脉冲重新开始Write Memory命令时序若CRC正确
总线主机再发出编程脉冲将编程存储器中被选中的字节
需说明的是第一次Write Memory命令流程所产生的8位CRC值是由移入CRC生成器的命
令字节及随后移入的2个地址字节和1个数据字节生成的随后的Write Memory命令流程所产
生的8位CRC码归结于DS2502自动增加地址计数器其CRC码结果由加载不是移入的
到CRC生成器的新增加的地址的最低有效字节和移入的新数据字节所生成的
对于以上两种情况是否继续为DS2502提供编程脉冲完全由总线主机决定这是因为DS2502
不能判断出总线主机计算的8位CRC校验码与其自身计算值是否一致如果错误的CRC码被
忽略总线主机又发出了编程脉冲那么DS2502内就出现了错误编程同时也应注意到DS2502
在接收到总线主机为验证选定的EPROM编程字节而发出的8个读时隙以后其内部地址计数
器将加1是否继续决定权完全在总线主机因此如果EPROM数据字节与要求的数据字节
不符而总线主机又继续进行Write Memory命令那么在DS2502内部也会产生错误编程
Write Memory命令序列可以随时终止只需发出复位脉冲
Write Status [55H]
Write Status写状态命令用于对EPROM状态数据段编程总线主机在发出命令字节之后
紧跟2字节地址(TA1=(T7:T0), TA2=(T15:T8))和1个状态字节的数据D7:D0DS2502由命
令地址和数据字节计算出8位CRC校验码总线主机读回该值以确认其接收的命令字起
始地址和数据字节是否正确
如果总线主机读到的CRC错误则必须发出复位脉冲重新执行这个序列若读回的CRC码
正确则总线主机发出编程脉冲1-Wire总线上12V脉冲保持480 s在编程之前EPROM
状态数据在首7个字节为逻辑1对于总线主机提供的被置为逻辑0的数据字节的每一位
在编程脉冲出现后被选中的EPROM状态数据区域字节对应的位被编程为逻辑0EPROM状
态数据段的第8个字节出厂设置为00H
在480 s编程脉冲及数据线回到5V电平以后总线主机发出8个读时隙以验证相应位的编
程是否正确DS2502 将被选中EPROM状态地址中的数据以最低有效位在先进行响应该字
节为所有写到该EPROM状态字节地址的逻辑与如果EPROM状态字节在某些位为1而总
线主机发出的字节对应为0则应该发出复位脉冲当前字节地址需要被重新编程若DS2502
相应的EPROM状态字节也为0说明编程成功DS2502自动将地址计数器加1指向EPROM
状态数据段的下一个字节 新的2字节地址中的最低有效字节也作为起始值载入8位CRC生
成器总线主机将发出8个写时隙送入下一数据字节
DS2502
13 of 22
DS2502 将数据接收到暂存器同时将数据移到CRC生成器此时生成器中已经预加载了当前
地址的最低有效字节因此8位CRC的结果由新数据和新地址的最低有效字节生成提供完数
据后总线主机使用8个读时隙从 DS2502读回8位CRC码以确认地址累加及接收数据是否
正确若CRC错误则必须发出复位脉冲重新开始Write Status命令时序若CRC正确总
线主机再发出编程脉冲将编程存储器中被选中的字节
需说明的是第一次Write Status命令流程所产生的8位CRC码是由移入CRC生成器的命令
字节及随后移入的2个地址字节和1个数据字节生成的随后的Write Status命令流程所产生的
8位CRC码归结于DS2502自动增加地址计数器其CRC码结果由加载不是移入的到CRC
生成器的新增加的地址的最低有效字节和移入的新数据字节所生成的
对于以上两种情况是否继续为DS2502提供编程脉冲完全由总线主机决定这是因为DS2502
不能判断出总线主机计算的8位CRC校验码与其自身计算值是否一致如果错误的CRC码被
忽略总线主机又发出了编程脉冲那么DS2502内就出现了错误编程同时也应注意到DS2502
在接收到总线主机为验证选定的EPROM编程字节而发出的8个读时隙以后其内部地址计数
器将加1是否继续决定权完全在总线主机因此如果EPROM数据与要求数据不符而总
线主机又继续进行Write Status命令那么在DS2502内部也会产生错误编程Write Status命令
序列可以随时终止只需发出复位脉冲
1-Wire 总线系统总线系统总线系统总线系统
1-Wire 是在一条总线上连接一个总线主机和一个或多个从机设备的系统任何情况下
DS2502 都是从机设备而总线控制器通常是一个微控制器有关总线系统的讨论将分为三个
主题硬件结构处理流程和1-Wire信令信号类型和时序1-Wire 协议定义总线传输基
于特定时隙内的总线状态该时隙起始于由总线主机发出的同步脉冲的下降沿对于更详细的
协议描述请参阅Book of DS19xx iButton Standards的第四章
硬件配置硬件配置硬件配置硬件配置
1-Wire 总线只定义了一根信号线所以总线上的各个设备在适当的时刻运行是非常重要的为
达到这一目的每一个接入1-Wire 总线的设备都采用漏极开路或三态输出DS2502 为漏极开
路输出其内部等效电路如图7所示总线主机可以采用相同的等效电路如果没有可利用的
双向引脚则可将独立的输入输出管脚连接起来使用
在总线主机端需加一个上拉电阻总线主机的等效电路如图8a和8b所示短距离传输时上拉
电阻值约为5k
DS2502
14 of 22
由多个从机连接到1-Wire总线上组成多节点总线常规速率下1-Wire总线的最高数据传输速
率为16.3kbps如果总线主机欲对DS2502的EPROM部分进行编程则要求编电源具备输出
12V/10mA的能力且保持480 s1-Wire总线的空闲状态为高电平不管是何种原因如果需
要暂停传输且要求传输还能够重新开始则总线必须停留于空闲状态如果情况不是这样
且总线保持低电平时间超过120 s那么总线上的某个或多个器件可能被复位
处理流程处理流程处理流程处理流程
通过1-Wire接口访问DS2502的次序如下所示
初始化
ROM 功能命令
存储器功能命令
读/写存储器/状态
初始化初始化初始化初始化
1-Wire 总线上所有的传输均由初始化命令开始初始化命令由主机发出的复位脉冲和从机响应
的应答脉冲Presence Pulse组成
应答脉冲让总线主机知晓DS2502在总线上并且已经准备就绪更多详细内容请阅 "1-Wire
信令" 一节
ROM 功能命令功能命令功能命令功能命令
一旦总线主机检测到应答脉冲就发出四种ROM功能命令中的一种所有ROM功能命令长度
为8位下面列出了这些命令流程图参见图9
Read ROM [33H]
此命令允许总线主机读取DS2502的8位家族码唯一的48位序列号和8位CRC校验码此
命令只在总线上只有一片DS2502时使用如果总线上出现多个从机则当各个从机同时发送
时将会发生数据冲突漏极开路产生线与结果
Match ROM [55H]
后跟一个64位ROM序列的Match ROM命令允许总线主机在多点时寻址某个特定的DS2502
只有与该64位ROM序列匹配的DS2502才会对随后的存储器功能命令进行响应其他不匹配
的从机将等待下一个复位脉冲此命令可以应用于总线上有单个或多个设备
DS2502
15 of 22
DS2502 等效电路等效电路等效电路等效电路 图7
总线主机电路总线主机电路总线主机电路总线主机电路 图8
DS2502
16 of 22
ROM 功能流程图功能流程图功能流程图功能流程图 图9
DS2502
17 of 22
Skip ROM [CCH]
此命令允许在单节点总线系统中访问存储器功能时而无须提供64位ROM码从而节省时间
如果总线上存在多个从机而又在Skip ROM命令之后发出了读数据命令则多个从机将同时
发送数据势必引起数据冲突漏极开路时产生线与结果
Search ROM [F0H]
当一个系统启动初始化时总线主机可能不知道有多少设备在1-Wire 总线上并且也不知道它
们的64位ROM码Search ROM 命令允许总线主机采用排除法来确认总线上所有从机设备
的64位ROM码ROM 搜索过程是反复执行一个简单的三步程序读一位读该位的补码
然后写入该位的期望值总线主机对ROM的每一位执行这三步程序在操作完成这个过程后
总线主机就能知道某个设备的ROM内容余下的器件数目及其ROM代码通过执行更多的过程
来判断有关ROM搜索的更深入讨论请参阅 Book of DS19xx iButton Standards的第五章其
中包括一个实例
1-Wire 信令信令信令信令
DS2502要求严格的协议以保证数据的完整性此协议包括在一根线上的五种类型信令复位
脉冲和应答脉冲的复位序列写0 写1读数据和编程脉冲除了应答脉冲外其他所有信
号都由总线主机激发与DS2502开始任何通信的初始化序列如图10所示在复位脉冲之后
如果出现在线应答脉冲则说明DS2502已经准备接收ROM 命令总线主机发送TX一个
复位脉冲(tRSTL 最小 480 s)然后释放总线并转入接收RX状态通过上拉电阻1-Wire
总线被拉为高电平在检测到数据引脚出现上升沿后 DS2502 继续等待tPDH 15-60 s
然后发送在线应答脉冲 (tPDL , 60-240 s)
Read/Write 时隙时隙时隙时隙
写/读时隙的定义如图11所示所有时隙都初始于总线主机拉低数据线数据线的下降沿通过
触发DS2502的一个延时电路使DS2502同步于总线主机在写时隙期间延时电路决定了
DS2502何时采样数据线对于一个读时隙如果传输的是0则延时电路决定DS2502将数
据线拉低的时间覆盖主机产生的1如果数据位为1器件将保持数据线状态不变
编程编程编程编程脉冲脉冲脉冲脉冲
从8位暂存器将数据拷贝到1024位EPROM存储器或状态存储器时在总线主机确认当前字节
的CRC正确之后12V的编程脉冲便需要加在数据线上在编程期间总线主机控制数据线从
上拉电阻所置的空闲高电平状态转换到数据线被有源驱动至12V编程电压的状态为DS2502
提供至少10mA的电流图12所示的此编程电压应保持480 s在此之后总线主机将数据线
返回到上拉电阻所控制的空闲高电平状态值得注意的是由于任何1-Wire EPROM设备都需
要高电压编程非EPROM类型的1-Wire器件内部的二极管会将数据线电压嵌位约为8V且
可能会损坏这些器件因此在编程DS2502过程中在总线上不允许挂接其它非EPROM的
1-Wire器件
DS2502
18 of 22
CRC校验码的生成校验码的生成校验码的生成校验码的生成
DS2502 的8位CRC校验码存储在64位ROM的最高有效字节总线主机根据64位ROM的
前56位值计算CRC值并将此值与DS2502存储值进行比较从而判断接收是否有误CRC
的等效多项式为 X8+ X5+ X4+ 1
有些情况下DS2502 也利用上述多项式生成8位CRC值并把此值提供给总线主机以确认
总线主机发送给 DS2502 的命令地址和数据字节的有效性图6所示的存储器功能流程图描
述了DS2502由Write Memory命令和Write Status命令而接收的命令地址和数据字节计算的8
位CRC值并把此值回传至总线主机以确认传输的正确性同样地DS2502也计算总线主
机发送的Read MemoryRead Status和Read Data/Generate 8位CRC命令和地址字节构成的8
位CRC值以确认这些字节已被正确接收在Read Data/Generate 8位CRC命令过程中当1024
位EPROM的每页数据发送给总线主机时DS2502 的CRC生成器也提供无误码数据传输的验
证对于状态存储器的8字节信息发送给总线主机时一样提供这种无误码验证
在每个CRC用于验证数据传输有效性的应用中总线主机必须采用上述多项式计算CRC值
并将该值或者与DS2502的64位ROM存储的8位CRC值读ROM命令相比较或者与
DS2502计算的8位CRC值相比较比较CRC值和是否继续某种操作都完全由总线主机决定
当DS2502存储的或计算的CRC值与总线主机生成的CRC值不匹配时DS2502内部没有电路
来阻止该命令继续进行正确使用图6流程所示的CRC可以产生一个高水平可信度的通信通
道有关生成CRC码的详细情况包括软件和硬件方面的应用实例请参阅Book of DS19xx
iButton Standards
复位和在线应答脉冲复位和在线应答脉冲复位和在线应答脉冲复位和在线应答脉冲初始化时序初始化时序初始化时序初始化时序 图10
480 s ≤≤≤≤ tRSTL < ∞∞∞∞ *
480 s ≤≤≤≤ tRSTH < ∞∞∞∞ (包括恢复时间包括恢复时间包括恢复时间包括恢复时间)
15 s ≤≤≤≤ tPDH < 60 s
60 s ≤≤≤≤ tPDL < 240 s
为了不屏蔽1-Wire总线上的其他设备的中断信令 tRSTL + tR 总是应该小于960 s
电阻
主机
DS2502
DS2502
19 of 22
读读读读/写时序图写时序图写时序图写时序图 图11
写写写写1 时隙时隙时隙时隙
60 s ≤ tSLOT < 120 s
1 s ≤ tLOW1 < 15 s
1 s ≤ tREC < ∞
写写写写0时隙时隙时隙时隙
60 s ≤ tLOW0 < tSLOT < 120 s
1 s ≤ tREC < ∞
读数据时隙读数据时隙读数据时隙读数据时隙
60 s ≤ tSLOT < 120 s
1 s ≤ tLOWR < 15 s
0 ≤ tRELEASE < 45 s
1 s ≤ tREC < ∞
tRDV = 15 s
tSU < 1 s
电阻
主机
DS2502
DS2502
20 of 22
编程脉冲时序图编程脉冲时序图编程脉冲时序图编程脉冲时序图 图12
DS2502
21 of 22
极限参数极限参数极限参数极限参数*
任何引脚对地电压 -0.5V 至 +12.0V
工作温度 -40°C 至 +85°C
储存温度 -55°C 至 +125°C
焊接温度 260°C时可持续10s
这只是器件所承受的极限值在不超过极限参数的前提下要使器件正常工作还需保证不超
出特性参数列表中的限定条件如果器件长时间处于这些极限条件会影响其可靠性
直流电气特性直流电气特性直流电气特性直流电气特性 VPUP=2.8V 至 6.0V -40°C 至 +85°C
参数参数参数参数 符号符号符号符号 最小最小最小最小 典型典型典型典型 最大最大最大最大 单位单位单位单位 注释注释注释注释
逻辑1 VIH 2.2 V 1, 6
逻辑0 VIL -0.3 +0.8 V 1, 11
输出逻辑低在4mA时 VOL 0.4 V 1
输出逻辑高 VOH VPUP 6.0 V 1, 2
输入负载电流 IL 5 A 3
工作电荷 QOP 30 nC 7, 8
编程电压在10mA 时 VPP 11.5 12.0 V
电容电容电容电容 TA = 25°C
参数参数参数参数 符号符号符号符号 最小最小最小最小 典型典型典型典型 最大最大最大最大 单位单位单位单位 注释注释注释注释
数据 (1-Wire) CIN/OUT 800 pF 9
交流电气特性交流电气特性交流电气特性交流电气特性 VPUP=2.8V 至 6.0V-40°C 至 +85°C
参数参数参数参数 符号符号符号符号 最小最小最小最小 典型典型典型典型 最大最大最大最大 单位单位单位单位 注释注释注释注释
时隙 tSLOT 60 120 s
写1低电平时间 tLOW1 1 15 s
写0低电平时间 tLOW0 60 120 s
读数据有效 tRDV 精确地15 s
释放时间 tRELEASE 0 15 45 s
读数据建立时间 tSU 1 s 5
恢复时间 tREC 1 s
复位高电平时间 tRSTH 480 s 4
复位低电平时间 tRSTL 480 s
在线检测高电平 tPDH 15 60 s
在线检测低电平 tPDL 60 240 s
编程延时 tDP 5 s 10
验证延时 tDV 5 s 10
编程脉宽 tPP 480 5000 s 10,12
编程电压上升时间 tRP 0.5 5.0 s 10
编程电压下降时间 tFP 0.5 5.0 s 10
DS2502
22 of 22
注释注释注释注释
1. 所有电压都是对地电压
2. VPUP = 外部上拉电压
3. 输入负载对地
4. 在复位高电平时间结束前无法进行其他复位操作和数据通信序列
5. 读数据建立时间的基准点是主机为读数据位而将1-Wire总线拉低的时刻数据保证在这个
下降沿的1 s内有效并至少保持14 s有效从1-Wire总线下降沿算起共15 s
6. VIH是外部上拉电阻和上拉电压的函数
7. 在5.0V时每72时隙为30纳库仑
8. 在 VCC =5.0V5k 电阻上拉至VCC120 s的最大时隙
9. 初始上电时数据管脚电容为800pF如果数据线经过5k 电阻上拉到VCC 则在电源上
电5 s之后寄生电容将不会影响正常的通信
10. 1-Wire上的最大编程电压为11.5V至12.0V温度范围为 -40°C至+50°C
11. 在某些低电压条件下为始终保证在线应答脉冲VILMAX可能得降到0.5V
12. 对每个地址编程脉冲的累积保持时间不得超过5ms
立刻下载此文档