编码工作台 · 使用说明
面向嵌入式 / IoT 调试的数据编码工具:核心是一个共享字节缓冲——你随便用哪种形式把字节贴进去,所有视图、校验和、数值解释同时刷新;盯 UART / CAN / payload dump 时一眼看全。另配进制整数、Unix 时间戳、CBOR↔JSON 三张小卡。
🔒 全部在你浏览器本地用 JavaScript 计算,一个字节都不出网,没有任何后端。贴 key、贴现场抓包都安全。
字节工作台
直接把字节贴进输入框就行——格式默认「自动」识别,贴 Hex、Base64、Base32、文本都认,识别成哪种会标在格式条右边(拿不准时可手动点死某一种)。
- 十六进制容错极强:自动忽略
0x、逗号、大括号、冒号、空白——所以直接粘贴 C 数组{0x48, 0x65}、日志里的48:65:6C、或连写4865都认。 - 另支持 文本 UTF-8 / Base64(兼容 URL 变体)/ Base32(RFC 4648)。
左侧「视图」常驻最常用的长度 / Hex / C 数组 / Base64 / ASCII;其余(Hex 连写、Python bytes、Base64URL、Base32、UTF-8、URL%、Binary)收在「更多视图」里,点开即看。点任意结果格即复制那一项;「复制全部」把所有结果整理成一段文本(贴报告 / 发同事 / 喂 AI 都方便)。「翻转字节序」把整个缓冲反序(大小端互换时常用)。输入会记住,刷新不丢。
校验和 / CRC(含帧校验)
🎯 帧校验助手:勾上「末尾 N 字节为校验位」,工具就对前面那段算校验,并跟你帧尾的 N 字节自动 ✓/✗ 比对(大小端都试)。例:收到 Modbus 响应 01 03 02 00 64 B9 AF,勾上、N=2,立刻看到 CRC16/Modbus 标绿 ✓——再不用手动剪掉尾巴自己对。
对当前字节实时计算嵌入式协议常见的一组校验(标签上悬停看参数):
| 名目 | 参数 | 常见于 |
|---|---|---|
| CRC-8 | poly 0x07, init 0x00 | 1-Wire / 传感器 |
| CRC16/Modbus | poly 0xA001(refl), init 0xFFFF | Modbus RTU |
| CRC16/CCITT | poly 0x1021, init 0xFFFF | 蓝牙 / SD / 多数串口协议 |
| CRC16/XMODEM | poly 0x1021, init 0x0000 | XMODEM / YMODEM |
| CRC-32 | poly 0xEDB88320(refl) | 以太网 / ZIP / zlib |
| sum8 / XOR(BCC) / LRC | 累加和 / 异或 / 补码和 | 各类轻量帧尾校验 |
数值解释(IEEE-754 / 整数)
从指定偏移起、按所选字节序(LE / BE),把缓冲解读成 uint/int 8·16·32·64 与 float32 / float64。最典型的用法:传感器回了 4 字节 00 00 C8 42,切到 LE 看 float32 = 100,立刻知道标度对不对。值若藏在帧中间,把偏移调到它的起始字节即可(不用先剪掉前面)。64 位用 BigInt,不丢精度。
进制整数互转
填一个整数(可带 0x / 0b / 0o 前缀或负号),选输入进制与位宽,得到 Hex / Dec / Bin / Oct,以及该位宽下的无符号与有符号(二进制补码)两种解读。填 -1 选 16 位即得 0xFFFF。超出位宽会按补码回绕并黄字提示。
Unix 时间戳
时间戳 ↔ 日期双向:填秒/毫秒看 UTC / 本地 / 相对时间,「现在」一键填入;也能反过来编辑 ISO 8601 反算时间戳。调 RTC、对日志时间常用。
CBOR ↔ JSON
受限 IoT 的二进制编码(RFC 8949),常跟 CoAP 搭配。左填 JSON 点 JSON → CBOR 得十六进制;右填 CBOR 十六进制点 CBOR → JSON 解码。字节串显示为 h'…'、标签为 tag(n)。点「送入字节工作台」可把这串 CBOR 字节灌进上面的缓冲,接着算 CRC、看各视图。配 CoAP 调试台 调 payload 正好。
想要别的编码(protobuf / MessagePack / 定点 Qm.n / 位域解码…)?右下角「意见反馈」,或邮件 linsuwei_mic@outlook.com。