第一次写硬件相关的笔记,整个过程也是慢慢摸索,还有很对知识不太懂,如果有错误,希望你可以帮我提出
准备
物料:CH340开发板 ESP8266串口wifi模块,ssd1306 0.96OLED
软件:Arduino IDE ; Adobe Photoshop; PcTOLCD
环境配置可参考搭建arduino esp8266初体验
配置开发环境
打开Arduino IDE 首先在“文件》首选项》附加开发板管理器网址”;添加管理器配置项
http://arduino.esp8266.com/stable/package_esp8266com_index.json
配置中指定了esp8266的驱动下载地址
打开“工具》开发板》开发板管理器 ”搜索esp8266进行安装,估计服务器都在国外,想加速网上办法很多,这里不再详述
安装完以后“开发板”面板中找到8266对应的开发板型号
我在这里选择的是NodeMCU1.0
这里根据自己的开发物联网平台进行选择即可;
安装屏幕驱动(U8g2)
进入“工具》管理库”输入U8g2进行安装
安装完成以后在“文件》示例”其中里面有很对的案例
硬件链接
一切准备就绪开始取模,编译
在PS中将图像二值化
设置好想要的图像大小,可设点给好像素进行裁剪,然后修改图像大小
将图片保存为bmp格式以方便取模
单色位图取模工具pctolcd2002
在设置中配置好u8g2.drawXBMP()需要的格式
推荐一个在线取模工具,可直接上传图片:
在线取模地址 https://dlsjf.top/other/binary
代码
/*
使用u8g2显示数据
图形显示器:OpenJumper 12864 OLED
设备核心:SSD1306
*/
#include <U8g2lib.h>
#define rst 2
/*
构造器(我自己理解为驱动)
1 Prefix U8G2 前缀
2 Display Controller SSD1306 显示控制器
3 Display Name 128X64_NONAME 显示器名称
4 Buffer Size 1, 2 or F (full frame buffer) 1:保持一页的缓冲区,用于firstPage/nextPage的PageMode。2:保持两页的缓冲区,用于firstPage/nextPage的PageMode.F:获取整个屏幕的缓冲区,ram消耗大,一般用在ram空间比较大的arduino板子.
5 Communication 4W_SW_SPI 通信协议
6 U8G2_R0 显示旋转角度 R0:0deg R1: 90deg; R2:180deg; R3:270deg
*/
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0);
//取模得到的数组
//width:128,height:64
// 将图片取模数据进行赋值
const unsigned char col[] U8X8_PROGMEM= {
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x3F,0xF8,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x8F,0xE2,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xE7,0xCF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF3,0x9E,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFB,0xBE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFB,0xBF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x3F,0x00,0xFF,0xFF,0x19,0x30,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0x87,0x5F,0xFC,0xFF,0x19,0x3C,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF1,0xFF,0xF1,0xFF,0x7D,0x38,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0xFC,0xFF,0xCF,0xFF,0xB9,0x73,