用EXCEL 将单色屏幕的Bitmap 字模数据还原回图形

就是比方说,把图像转换成给OLED 屏幕显示用的二进制数组以后,又想根据二进制数据看看它本来是个什么图像。原理很简单,就是把每个字节按位分解成0,1,0,1,单色屏每个位表示一个像素点,1 表示点亮,然后用一个单元格代表一个像素。拿Excel 做,优点是不用自己折腾图形界面和绘图,灵活性差一点,但是够用了。下面是实现的效果:

Excel 文件分享链接:pan.baidu.com/s/1q6zMw19_NU81XSs5CotosQ?pwd=dnz7 提取码: dnz7。

说明

  • 蓝色边界以内是8x8 的像素显示区域,对我来说这么大就够了;
  • 每一列8 个像素对应一字节显示数据,一般OLED 屏幕都是这样组织的;
  • 边界下方40、40 那行用来输入每一列对应的数据,格式为16 进制,不加0x 前缀;
  • 再下一行对应每一字节的二进制,不用管,别动;
  • 顶部像素对应MSB,就是第8 位,底部是LSB;
  • 这个像素对应关系是边界右边那排8,7......2、1 控制的,改成1、2......以后就变成反序;

原理

就是几个公式加上条件格式,让值大于0 的像素显示为白色背景。先用公式HEX2BIN 把八个16 进制数据转换成二进制字符串,

MID 从字符串里取一个字符,再拿VALUE 把0 或1 的字符转换成数字,这样才能在条件格式里比大小。

相关推荐
BackCatK Chen20 小时前
第 8 篇:TMC2240 电机正反转实现|DIR 引脚控制 + 代码优化(稳定不抖动)
stm32·单片机·嵌入式硬件·保姆级教程·电机正反转·tmc2240·dir引脚控制
星马梦缘20 小时前
EDA彩灯电路绘制
单片机·嵌入式硬件·物联网·pcb·eda·嘉立创
Forsete1 天前
LINUX驱动开发#9——定时器
linux·驱动开发·单片机
Hello_Embed1 天前
libmodbus 移植 STM32(USB 串口后端篇)
笔记·stm32·单片机·嵌入式·freertos·libmodbus
VekiSon1 天前
Linux内核驱动——杂项设备驱动与内核模块编译
linux·c语言·arm开发·嵌入式硬件
来自晴朗的明天1 天前
14、光耦隔离电路(EL3H7)
单片机·嵌入式硬件·硬件工程
G***技1 天前
杰和IB3-272:以低功耗高性能打造新一代工业智能交互核心
单片机·嵌入式硬件·物联网
czhaii1 天前
STC AI8052U单片机特点
单片机
MAR-Sky1 天前
keil5中数据的不同定义和单片机(以stc8为例)里的对应关系(idata,xdata,data,code)
单片机·嵌入式硬件
项目題供诗1 天前
51单片机入门(八)
单片机·嵌入式硬件·51单片机