Cada bit de la respuesta es colocado en una posición de los bytes de datos enviados por el esclavo.
El primer byte, en los bits de 0 a 7, recibe los 8 primeros bits a partir del enderezo inicial indicado
por el maestro. Los demás bytes (caso el número de bits de lectura fuera mayor que 8), continúan
la secuencia. Caso el número de bits leídos no sea múltiplo de 8, los bits que sobran del último byte
deben sierren rellenados con 0 (cero).
Ejemplo: lectura de los bits de estado para habilitación general (bit 1) y sentido de giro (bit 2) del
MVW-01 en el enderezo 1:
Enderezo del esclavo
No. de bits (high)
No. de bits (low)
En el ejemplo, como el número de bits leídos es menor que 8, el esclavo preciso solamente de
1 byte para la respuesta. El valor del byte es "02h", que en binario tiene la forma 0000 0010. Como
el número de bytes leídos es igual a 2, solamente nos interesa los dos bits menos significativos, que
poseen los valores 0 = deshabilita general y 1 = sentido de giro horario. Los demás bits como no
fueran solicitados, son rellenados con 0 (cero).
8.6.3.2 Función 03 - Read Holding Register_____________________________________
Lee el contenido de un grupo de registradores que necesariamente deben estar en secuencia
numérica. Esta función posee la siguiente estructura para los telegramas de lectura y respuestas (los
valores son siempre hexadecimales, y cada campo representa un byte):
Pregunta (Maestro)
Campo
Función
Bit inicial (high)
Bit inicial (low)
CRC-
CRC+
Capítulo 8 - Dispositivos Opcionales
Respuesta (Esclavo)
Valor
Campo
01h
Enderezo del esclavo
01h
Función
00h
Byte Count
01h
Estado de los bits 1 y 2
00h
CRC-
02h
CRC+
ECh
0Bh
Valor
01h
01h
01h
02h
D0h
49h
8-55