OLED显示文字和图片

OLED显示文字和图片

一、器材

一块Arduino uno板,一块OLED屏幕(IIC接口),Mixly软件
在这里插入图片描述

二、OLED显示文字

首先我们来完成一下接线

OLED屏Arduino
VCC5V/3.3V
GNDGND
SCL2
SDA3

这里的SCA和SDA的接线端口是可以换的,只要保持和Mixly程序中一样即可。
接下来我们来编写Mixly程序
在这里插入图片描述
特别注意这里的图像名称还有高度和宽度要一致
这里显示文字的方式和待会显示图片的方式是一样的,OLED上显示文字其实就是把文字当成一幅图片,然后处理成位图,再在对应的位置亮对应的点即可。

三、OLED显示图片

首先我们打开Mixly的代码区域,将下列的代码复制到记事本中

static const unsigned char PROGMEM bitmap[96] = {0x80,0x00,0x00,0x00,0x40,0x00,0x84,0x10,0xFC,0x1F,0x80,0x00,0x88,0x10,0x84,0x10,0xFE,0x3F,0x90,0x08,0x84,0x10,0x10,0x04,0x90,0x04,0xFC,0x1F,0x20,0x02,0x80,0x00,0x84,0x10,0xC0,0x01,0xFE,0x3F,0x84,0x10,0x30,0x06,0xC0,0x01,0xFC,0x1F,0x0C,0x18,0xA0,0x02,0x04,0x10,0x13,0x64,0xA0,0x02,0x80,0x00,0x10,0x04,0x90,0x04,0x10,0x11,0x10,0x04,0x88,0x08,0x12,0x21,0x10,0x04,0x84,0x10,0x12,0x48,0x10,0x04,0x83,0x60,0x12,0x48,0x08,0x04,0x80,0x00,0xE1,0x0F,0x08,0x04,0x80,0x00,0x00,0x00,0x04,0x04};

在这里插入图片描述

然后我们打开电脑自带的画图软件,打开我们要显示的图片,再点击重新调整大小,将大小调成48*48像素
在这里插入图片描述
再点文件,另存为BMP格式
在这里插入图片描述
接着我们打开取模工具,点击中间的设置,将设置改成和下图一样。
在这里插入图片描述
在这里插入图片描述
接着打开我们之前处理好的BMP格式的图片,就可以预览效果了,注意的是取模软件不能全屏,全屏的话图像会消失。
在这里插入图片描述
再点击生成字模,并讲字模复制,放在之前的记事本中
在这里插入图片描述
接着将刚刚复制的字模替换掉之前bitmap数组中的东西
在这里插入图片描述

再将bitmap数组的大小改成288
在这里插入图片描述
接着我们打开Mixly,找到自定义中的注释模块
在这里插入图片描述
将之前做好的bitmap数组粘贴进去
如果想省事的话也可以直接用我的这个bitmap数组

static const unsigned char PROGMEM bitmap[288] = {0x00,0x00,0x80,0xFF,0x0B,0x00,0x00,0x00,0xE0,0xFF,0x3F,0x00,0x00,0x00,0xF0,0xFF,
0x3F,0x00,0x00,0x00,0xF0,0xFF,0x7F,0x00,0x00,0xFC,0xFF,0xFF,0xFF,0x00,0x00,0xFF,
0xFF,0xFF,0xFF,0x01,0x80,0xFF,0xFF,0xFF,0xFF,0x01,0x80,0xFF,0xFF,0xFF,0xFF,0x03,
0xC0,0xFF,0xFF,0xFF,0xFF,0x03,0xC0,0xFF,0xFF,0xFF,0xFF,0x03,0xE0,0xFF,0xFF,0xFF,
0xFF,0x03,0xE0,0xFF,0xFF,0xFF,0xFF,0x07,0xE0,0xFF,0xFF,0xFF,0xFF,0x03,0xE0,0xFF,
0xFF,0xFF,0xFF,0x0F,0xF0,0xFF,0xFF,0xFF,0xFF,0x1F,0xFC,0xFF,0xFF,0xFF,0xFF,0x3F,
0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,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,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,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFF,0xFF,0xFF,0xFF,0x7F,0xFC,0xFF,
0xFF,0xFF,0xFF,0x3F,0xF8,0xFF,0xFF,0xFF,0xFF,0x1F,0xF0,0xFF,0xFF,0xFF,0xFF,0x07,
0xC0,0xFF,0xFF,0xFF,0xFF,0x03,0x00,0x00,0xF8,0x0F,0x00,0x00,0x00,0x0E,0xF8,0x0F,
0xF0,0x00,0x00,0x0F,0xF8,0x07,0xF0,0x00,0x00,0x0F,0xFC,0x03,0xF8,0x00,0x80,0x0F,
0xFC,0x1F,0xF8,0x00,0x80,0x07,0xFE,0x0F,0x78,0x00,0xC0,0x07,0xFE,0x07,0x7C,0x00,
0xC0,0x03,0xFE,0x03,0x3C,0x00,0xE0,0x03,0xF0,0x01,0x3C,0x00,0xE0,0x03,0xF8,0x00,
0x3E,0x00,0xE0,0x01,0x78,0x00,0x1E,0x00,0xE0,0x01,0x3C,0x00,0x1C,0x00,0x00,0x00,
0x1C,0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x00};

接着将之前的bitmap数组给删除掉,得到和下图一样的程序
注意的是这里的高度和宽度都是48,和我们图像的大小一样
在这里插入图片描述
最后的效果图,由于我的OLED是双色的,所以中间会有断横
在这里插入图片描述

  • 9
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值