1-Wire
目的
提供逻辑分析仪在 1-Wire 总线除错与分析之快速应用方案。
方法
硬件连接
下图为单晶片实验版,使用 DS18B20 做温度的量测实验,连接逻辑分析仪的通道0至支援1-Wire的 protocol,资料线为 DS18B20 中间的脚位,左侧的是地线。


硬件设定
设定取样率
原则上取样率为待测物频率的10倍左右最合适;但是取样率越高可以看到越细致的讯号
波形。1-Wire 的传输率为16KHz 或142KHz左右。本例使用5MHz的取样率,如图2。


设定触发准位
在设定触发准位之前,建议可使用示波器来观察 1-Wire 的讯号波形,来确定触发准位电
压值。




设定触发参数
可以根据需求来设定,本例以CH-00通道( 1-Wire 讯号)变化缘为触发,如图5。


软件设定
硬件设定完毕之后,进行下列软件设定步骤,如图6,再让逻辑分析仪撷取 1-Wire 讯号,
并用总线分析软件来做分析,如图7。
通道设定:1-Wire 为CH 0。
传输模式:预设为 Standard。
位元方向:预设为 LSB First,。
取样位置:使用者要自己设定,读取Bit的时间。
选择要分析的范围:预设的整个缓冲区。
波形颜色:最后设定 1-Wire 栏位颜色,按下确定,即分析 1-Wire 的讯号。




1-Wire 通讯协定
1-Wire 是 Maxim 子公司达拉斯半导体的专利技术,采用单一信号线,但可像 I2C,SPI 一样,同时传输时钟( clock )和资料( data ),而且资料传输是双向的。1-Wire 使用较低的资料传输速率,通常是用来沟通小型 device,如数位温度计。1-Wire 有两种速率:标准模式( Standard )16kbps、驱动模式( Overdrive )142kbps。
1- Wire 系统是用单一信号线连接主机( Master )和一台或多台设备( Slave ),主机是一个典型的微控制器。闲置的状态为高电位,当要传送资料时,固定都是由 Master 发出信号。资料的传递由几种单线上的讯号类别型所组成:Rest Pulse、Presence Pulse、Write-One、Write-Zero、Read-Data。
Reset Pulse
由 Master 发出,将资料线拉到低电位,并且等待至少480μs且不超过960μs,如图8。
Presence Pulse
当 Master 发出 Reset Pulse 之后,等待15-60μs之后 Slave 必须在将资料线拉到低电位,维持60μs以上并且不超过240μs,以回应主机,如图8。后面就紧接着资料的传递。


Write-One
Master 将讯号线拉至低电位,并且在tWIL的最大时间之内释放,使讯号线的电压大于VTH。为了实现最可靠的通信,讯号线在tWIL时间里,都不应该高于VILMAX,如图9。


Write-Zero
Master 将讯号线拉至低电位,并且在tWOL的最大时间之内释放,使电压在tWOL的最大时间之内低于VTH。为了实现最可靠的通信,讯号线在tWOL时间里,都不应该高于VILMAX,如图10。


Read-Data
读资料的时序在一开始和 Write-One 相似,都是由 Master 将资料线拉到低电位,在tRL时间之内保持电压低于VRL。在tRL时间之内,要是资料为 Zero,则 Slave 开始将资料线拉至低电位,并在到tREC时间之前释放;要是资料为 One,则 Slave 并不维持资料线的低电位,Master释放后,电位就开始上升至超过VTH,如图11。
在 Read-Data 时,Master 会有个撷取 Bit 的时间点,这个时间区域称为「Sampling Window」,Master 必须在 Sampling Window 之内读取一次资料,以来决定是 Zero 或 One。为实现最可靠的通信,tRL在允许范围内应该要尽量短,Master 应该要在接近但不晚于tMSR的最大值读资料。从资料线读取资料后,Master 必须等待直到tSLOT结束。这确保 Slave 在下个 Bit 要传送前,有足够的恢复时间(tREC)。

