COMANDOS 'O' ESCRIBIR-UNO/LEER BIT y 'Z' ESCRIBE-CERO
Forma: "O" o "Z"
El comando escribir/leer bit es el comando 1-Wire de más bajo nivel. Este comando permite que un sólo bit, ya sea cero
(0) o uno (1) sea leído del bus o a un (1) ser escrito en el bus. Esta función se incluye para permitir la manipulación
directa de dispositivos 1-Wire, y normalmente no se le requiere.
En un bus 1-Wire, el maestro del bus (el HA7E) escribe un uno (1) bajando el voltaje en el bus por un tiempo corto (para
mayores detalles, consulte el capítulo 1 del libro sobre los estándares del iButton DS19xx, de Dallas Semiconductor).
Para escribir un cero (0) el maestro del bus mantiene abajo el voltaje del bus por un tiempo más prolongado. Cuando un
dispositivo esclavo necesita enviar un bit uno (1), lo consigue simplemente con no hacer nada durante el período en que
el maestro del bus está escribiendo un uno (1). Por el contrario, cuando un dispositivo esclavo necesita enviar un cero
(0), lo hace manteniendo abajo el voltaje durante el período de escritura de un uno (1) del maestro del bus, pero por un
tiempo mayor: el correspondiente al período del cero (0). Esto le permite al dispositivo esclavo enviar ambos valores de
bit, uno y cero, sin necesidad de asumir el manejo del bus. El maestro del bus 1-Wire es el que lleva a cabo el manejo;
con lo que un dispositivo esclavo sólo necesita mantener el bus abajo durante los períodos en que desea enviar un valor
de bit cero (0). La única circunstancia en la cual el esclavo maneja al bus es durante la presencia de un restablecimiento
(reset).
El comando "O" es tanto un comando para escribir un bit, como un comando para leer un bit. Cuando el maestro del bus
está escribiendo bits, se pueden aplicar ambos comandos "O" y "Z"; pero cuando el maestro del bus está leyendo bits
sólo se puede aplicar el comando "O". Al leer un bit, la respuesta a un comando "O" puede ser un "0" o un "1"
dependiendo si el dispositivo esclavo mantiene o no al bus abajo, para indicar un bit "0".
El comando de bloque "W" ejecuta esta misma función en bloques de datos.
Ejemplo: Escribir un cero "0" en el bus.
Comando
(escribe un bit 0)
Z
(escribe un bit 1)
O
(lee un bit 1)
O
(lee un bit 0)
O
Embedded Data Systems,
Comando ESCRIBIR-UNO /LEER BIT
(comandos de un sólo carácter)
Respuesta
0<CR>
1<CR>
1<CR>
0<CR>
.
LLC
; 2019 Fortune Drive; Lawrenceburg, KY 40342; Tel/Fax 502-859-5490
11-19