8.23.3.1 Función 01
- Read
Coils
8.23.3.2 Función 03
- Read
Holding
Register
Lee el contenido de un grupo de bits internos que necesariamente
deben estar en secuencia numérica. Esta función posee la siguiente
estructura para los telegramas de lectura y respuesta (los valores
son siempre hexadecimales, y cada campo representa un byte):
Pregunta (Maestro)
Dirección del esclavo
Función
Dirección del bit inicial (byte high)
Dirección del bit inicial (byte low)
Número de bits (byte high)
Número de bits (byte low)
etc a
CRC-
CRC+
Tabla 8.17 - Estructura de la función 01
Cada bit de la respuesta es puesto 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 de la dirección inicial indicada por
el maestro. Los demás bytes (caso el número de bits de lectura fuere
mayor que 8), continúan en la secuencia. Caso el número de bits
leídos no sea múltiplo de 8, los bits restantes del último byte deben
ser llenados con 0 (cero).
Ejemplo: lectura de los bits de estado para habilitación general
(bit 1) y sentido de giro (bit 2) del CFW-08 en la dirección 1:
Pregunta (Maestro)
Campo
Dirección del esclavo
Función
Bit inicial (high)
Bit inicial (low)
No. de bits (high)
No. de bits (low)
CRC-
CRC+
Tabla 8.18 - Ejemplo de telegrama utilizando la función 01
En el ejemplo, como el número de bits leídos es menor que 8, el
esclavo necesitó de solamente 1 byte para la respuesta. El valor del
byte fue 02h, que en binario tiene la forma 0000 0010. Como el nú-
mero de bits leídos es igual a 2, solamente nos interesa los dos bits
menos significativos, que poseen los valores 0 = deshabilitado ge-
neral y 1 = sentido y giro horario. Los demás bits, como no fueron
solicitados, son llenados con 0 (cero).
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 respuesta (los valores son
siempre hexadecimales, y cada campo representa un byte):
CAPITULO 8 - DISPOSITIVOS OPCIONALES
Dirección del esclavo
Campo Byte Count (no. de bytes de datos)
Valor
Campo
01h
Dirección del esclavo
01h
Función
00h
Byte Count
01h
Estado de los bits 1 y 2
00h
CRC-
02h
CRC+
ECh
0Bh
Respuesta (Esclavo)
Función
Byte 1
Byte 2
Byte 3
etc a
CRC-
CRC+
Respuesta (Esclavo)
Valor
01h
01h
01h
02h
D0h
49h
197