← 返回工具

编码工作台 · 使用说明

面向嵌入式 / IoT 调试的数据编码工具:核心是一个共享字节缓冲——你随便用哪种形式把字节贴进去,所有视图、校验和、数值解释同时刷新;盯 UART / CAN / payload dump 时一眼看全。另配进制整数、Unix 时间戳、CBOR↔JSON 三张小卡。

🔒 全部在你浏览器本地用 JavaScript 计算,一个字节都不出网,没有任何后端。贴 key、贴现场抓包都安全。

字节工作台

直接把字节贴进输入框就行——格式默认「自动」识别,贴 Hex、Base64、Base32、文本都认,识别成哪种会标在格式条右边(拿不准时可手动点死某一种)。

左侧「视图」常驻最常用的长度 / 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-8poly 0x07, init 0x001-Wire / 传感器
CRC16/Modbuspoly 0xA001(refl), init 0xFFFFModbus RTU
CRC16/CCITTpoly 0x1021, init 0xFFFF蓝牙 / SD / 多数串口协议
CRC16/XMODEMpoly 0x1021, init 0x0000XMODEM / YMODEM
CRC-32poly 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

帮我完善这个工具

用着哪里别扭、想要什么功能、发现了 bug —— 都欢迎告诉我。

想让我回复你?直接邮件我:linsuwei_mic@outlook.com