#byte #ack #protocols #variables #command #ding #start

ddaa_protocol

叮叮 Ack Ack:一个面向微控制器串行通信的简单协议

2 个不稳定版本

0.2.0 2023年5月27日
0.1.0 2023年5月25日

#4#ack

36 每月下载次数

BSD-3-Clause

15KB
83

叮叮 Ack Ack

ding_ding_ack_ack 是一个用于解析和格式化叮叮 Ack Ack 协议消息的包。

以下是叮叮 Ack Ack 协议规范

Request Frame (8  -  39 bytes):
 Byte 1: Start byte 1 (0x07)
 Byte 2: Start byte 2 (0x01)
 Byte 3: Command (0x05 for read, 0x1A for write, 0x07 for ping)
 Byte 4: Variable (user-defined)
 Byte 5: Data Length in N Bytes (1-32)   (ignored in read operations)
 Byte 6 - Byte (N - 1): Error Message (User defined) (ignored in read operations)
 Byte 6 + N + 1: End byte 1 (0x17)
 Byte 6 + N + 2: End byte 2 (0x04)

Response Frame for Successful Calls (8  -  39 bytes):
 Byte 1: Start byte 1 (0x06)
 Byte 2: Start byte 2 (0x01)
 Byte 3: Command that was sent
 Byte 4: Variable that was sent
 Byte 5: Data Length in N Bytes (1 - 32)
 Byte 6 - Byte (N - 1): Message (User defined)
 Byte 6 + N + 1: End byte 1 (0x17)
 Byte 6 + N + 2: End byte 2 (0x04)

Response Frame for Failed Calls (8 -  39 bytes):
 Byte 1: Start byte 1 (0x15)
 Byte 2: Start byte 2 (0x01)
 Byte 3: Command that was sent
 Byte 4: Variable that was sent
 Byte 5: Data Length in N Bytes (1-32)
 Byte 6 - Byte (N - 1): Error Message (User defined)
 Byte 6 + N + 1: End byte 1 (0x17)
 Byte 6 + N + 2: End byte 2 (0x04)

Ping:
 Request Frame (8 - 39 bytes):
  Byte 1: 0x07
  Byte 2: 0x01
  Byte 3: 0x07
  Byte 4: 0x00
  Byte 5: Data Length in N Bytes (1 - 32) --- can be used for discovery / identification
  Byte 6 - Byte (N - 1): Message (User defined)
  Byte 6 + N + 1: End byte 1 (0x17)
  Byte 6 + N + 2: End byte 2 (0x04)

 Response Frame(8 - 39 bytes):
  Byte 1: 0x06
  Byte 2: 0x01
  Byte 3: 0x07
  Byte 4: 0x00
  Byte 5: Data Length in N Bytes (1 - 32)
  Byte 6 - Byte (N - 1): Message (User defined)
  Byte 6 + N + 1: End byte 1 (0x17)
  Byte 6 + N + 2: End byte 2 (0x04)

无运行时依赖