Protocolos

⌘K
  1. Inicio
  2. Protocolos
  3. Protocolo DTPM
  4. DESCRIPCIÓN
  5. Estructura del protocolo

Estructura del protocolo

El protocolo DTPM se basa en la transmisión de paquetes de bytes divididos en tres bloques fundamentales: Cabecera (Header), Datos (de uso opcional dependiendo de la orden) y Checksum.

A continuación, se detalla la composición estándar de cualquier trama enviada o recibida:

Bloque #BYTE VALOR NOMBRE DESCRIPCIÓN
HEADER 1 0x16 SYN Byte de sincronismo
2 LEN1 LEN LSB numero bytes paquete
3 LEN2 LEN MSB numero bytes paquete
4 ID ID Dirección dispositivo destino
5 OD OD Código de la orden a ejecutar
DATOS 6 DATO[0] Primer byte de datos Primer byte de datos (si hay datos)
6+n DATO[n-1] Ultimo byte de datos Ultimo byte de datos (si hay datos)
CHECKSUM 5+n+1 CHECKSUM 1 CHECKSUM LSB del Checksum
5+n+2 CHECKSUM 2 CHECKSUM MSB del Checksum

Detalles de los bloques:

  • SYN: Toda trama de comunicación del protocolo DTPM debe empezar siempre e inexcusablemente con el byte de sincronismo 0x16.
  • LEN: Indica la longitud total de la trama. El recuento debe incluir todos los bytes, desde el byte inicial SYN hasta los dos bytes finales del CHECKSUM (ambos inclusive).
  • OD (Orden): Especifica la acción que el dispositivo debe llevar a cabo.
  • Datos: Este campo es dinámico. Algunas órdenes, como enviar un texto a la pantalla, requerirán este bloque. Otras órdenes simples, como un STOP (detener el dispositivo), no requieren parámetros adicionales, por lo que su trama constará únicamente de 7 bytes en total (Cabecera + Checksum).
  • Checksum: Se debe adjuntar siempre al final del paquete para garantizar la integridad de la transmisión. Se calcula sumando todos los bytes del paquete (exceptuando los propios bytes del Checksum) y transmitiendo primero el byte de menor peso (LSB).