fix(hardware): 修正图像大小字段的字节序说明和代码
- 将图像大小字段的字节序从大端序改为小端序 - 更新协议文档中关于图像大小字节序的描述和示例 - 修改示例代码,将大小端转换函数由htobe64改为htole64 - 确保协议发送阶段中的图像大小字段正确使用小端序编码
This commit is contained in:
@@ -279,7 +279,7 @@ sequenceDiagram
|
|||||||
协议设计(三段式)
|
协议设计(三段式)
|
||||||
|
|
||||||
1. JSON元数据:{"id": "...", "action": "scan_completed", "data": {"wood_id": "WD0001", "image_size": 314572800, "image_format": "jpg"}}
|
1. JSON元数据:{"id": "...", "action": "scan_completed", "data": {"wood_id": "WD0001", "image_size": 314572800, "image_format": "jpg"}}
|
||||||
2. 8字节大端序整数:图像大小
|
2. 8字节小端序整数:图像大小
|
||||||
3. 原始二进制图像数据流
|
3. 原始二进制图像数据流
|
||||||
|
|
||||||
**支持的图像格式:**
|
**支持的图像格式:**
|
||||||
@@ -290,7 +290,7 @@ sequenceDiagram
|
|||||||
| 阶段 | 描述 | 示例 |
|
| 阶段 | 描述 | 示例 |
|
||||||
| ---- | ---- | ---- |
|
| ---- | ---- | ---- |
|
||||||
| 1 | JSON元数据(以'}'结束,触发JSON解析) | {"id":"xxx","action":"scan_completed","data":{"wood_id":"WD0001","image_size":314572800,"image_format":"jpg"},"timestamp":1705300000000} |
|
| 1 | JSON元数据(以'}'结束,触发JSON解析) | {"id":"xxx","action":"scan_completed","data":{"wood_id":"WD0001","image_size":314572800,"image_format":"jpg"},"timestamp":1705300000000} |
|
||||||
| 2 | 8字节大端序整数(图像大小) | [0x00][0x00][0x00][0x00][0x12][0xC1][0x1C][0x00] = 314572800 bytes (约300MB) |
|
| 2 | 8字节小端序整数(图像大小) | [0x00][0x1C][0xC1][0x12][0x00][0x00][0x00][0x00] = 314572800 bytes (约300MB) |
|
||||||
| 3 | 原始二进制图像数据流 | [图像二进制数据... 共314572800字节] |
|
| 3 | 原始二进制图像数据流 | [图像二进制数据... 共314572800字节] |
|
||||||
|
|
||||||
**说明:** 用于通知系统视觉扫描已完成并推送建模图像。系统接收到此请求后会自动将M106寄存器设置为true。
|
**说明:** 用于通知系统视觉扫描已完成并推送建模图像。系统接收到此请求后会自动将M106寄存器设置为true。
|
||||||
@@ -317,9 +317,9 @@ json request = {
|
|||||||
};
|
};
|
||||||
send(sock, request.dump().c_str(), ...);
|
send(sock, request.dump().c_str(), ...);
|
||||||
|
|
||||||
// 第二阶段:发送8字节大端序图像大小
|
// 第二阶段:发送8字节小端序图像大小
|
||||||
int64_t imageSize = 314572800;
|
int64_t imageSize = 314572800;
|
||||||
int64_t networkSize = htobe64(imageSize); // 转换为大端序
|
int64_t networkSize = htole64(imageSize); // 转换为小端序
|
||||||
send(sock, &networkSize, 8, 0);
|
send(sock, &networkSize, 8, 0);
|
||||||
|
|
||||||
// 第三阶段:发送原始二进制图像流
|
// 第三阶段:发送原始二进制图像流
|
||||||
|
|||||||
Reference in New Issue
Block a user