Hex 转 7 段数码管

这是 Hex 转 7 段数码管转换器。输入 0–F,得到每位数的段码字节。共阴、bit0=a 时,0 是 0x3F,F 是 0x71。点击笔段可拼自定义字形。

示例,点色块填入

点击笔段翻转。

追加一位,或给最后一位加小数点

点一下即可复制

0–F 对照表,点一行即可载入。hex 跟着上面的位序。共阳是共阴字节按 8 位取反。

这是什么转换器

这是 Hex 转 7 段数码管转换器。每个 hex 数字 0–F 编成一个字节,点亮 a–g(可选小数点)。常见共阴、bit0=a(gfedcba)时,0 是 0x3F,1 是 0x06,8 是 0x7F,F 是 0x71。这是显示用查找表,不是 ASCII:HEX 转 ASCII 才把字节变成字符。只需要取反时用 Hex 位运算。

如何使用

输入 CAFE,或点示例(CAFE、8、DEAD、12.3、0x3F 0x06)。模式数字 → 段码编码字符串,段码 → 数字读回字节。数码管选共阴(1 点亮)或共阳(0 点亮)。位序 gfedcba(a = bit0)或 abcdefg(g = bit0),小数点固定 bit7。键盘追加 0–F,DP 给最后一位加点。点笔段会切到段码模式并改写字节。复制结果复制 hex 字节;芯片可复制单个字节或 C 数组。0–F 表跟着当前位序,点一行载入该数字。

编码规则

逻辑位始终 a=0 … g=6、DP=7。abcdefg 会重排,所以 0 变成 0x7E 而不是 0x3F。共阳是打包字节的 8 位取反(gfedcba 下 0 → 0xC0)。12.3 这种小数点点在对应位上。认不出的字形显示 ?。b、d 用小写风格(0x7C、0x5E),避免和 8、0 撞形。7447 只画 0–9,6 和 9 的尾巴也不同——本表是单片机 hex 习惯,不是 7447。

用在哪里

Arduino / STM32 把端口写成 7 段、时钟或仪表、排查底片效果(阴阳接反),或把 const uint8_t digits[] 贴进固件。

常见问题

为什么 0 是 0x3F 不是 0x7E?

0x3F 是 gfedcba、a 在 bit0、g 灭。0x7E 是同一字形但 g 在 bit0(abcdefg)。原理图若把 a 接到高位,切换位序。

共阳看起来是反的

这种管子低电平才亮。这里选共阳,或到位运算页对阴极字节做 8 位 NOT。

能画自定义字母吗?

可以。点笔段,或从 H、L、P、U、短横开始(也能反解)。7 段画不出好认的 K、M、W。