Arduino+12864示波器准备工作(一)

Arduino+12864示波器准备工作(一)

使用单片机制作示波器,除了一些商用产品的方案,网上已经有很多基于STM32、51和Arduino的,收集和整理了一些51、Arduino的。10分钟、8分钟学习下来,小有收获。

现在是准备工作的一部分:把单色bmp位图转成十六进制序列,显示在12864屏上。

一、使用Gimp转化单色bmp

据老外的教程,是使用Gimp软件,很是方便,但Gimp软件有200多兆,比较大。步骤记录。

1.把要显示的图像用Windows自带的画图软件打开,调整尺寸为128X64,然后另存为单色位图。

2.Gimp软件转存xbm。Gimp里面打开单色位图,然后Export As…,然后找到输出的格式xbm,此时会跳出一个对话框(似乎旧版的没有),记住一个选项也别勾,直接按导出就好。

3.用记事本打开输出的文件,看到static后面的字符数组12_bites[],就是我们需要的了。嵌入到ino即可。

二、使用python转化单色bmp

bmp转成十六进制串的工具有很多,例如51下的PC2LCD等。设置多。

后来在https://github.com/robertgallup/python-bmp2hex上见到老外专门为Arduino写了一个python脚本。

使用命令行,例如bmp2hex.py -w 8 soba.bmp

但是我极少用安装版的python,频繁使用的是绿色且根本不影响环境变量的Winpython和Anaconda,复制copy就可以拿着脚本到处用。

于是稍稍改造了这个脚本,让它能直接在Winpython自带的IdleX下运行,不必控制台调用。

运行,Python Shell一通呼呼响,跑出来需要的十六进制数组:

(0)

相关推荐