【掌控板-arduino】2、arduino使用sh1106显示

1 前言

硬件:掌控板2.0
平台:arduino,非mind+

使用arduino平台,在掌控板2.0上显示图像。

2 硬件介绍

掌控板2.0使用的是ssd1106进行显示,参见电路图
在这里插入图片描述
同时查看IO口
在这里插入图片描述
如图,SCL使用IO22,SDA使用IO23

3 arduino加载库

3.1 方法1——利用arduino管理库搜索

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
可以搜索"esp32 1306"或"1106",我没有找到ssd1106,也可以直接搜"sh1106"
然后选择安装。
安装好后可以在文件夹中查看代码。
代码路径:C:\Users\XXXX\Documents\Arduino\libraries
XXXX为用户名。
在这里插入图片描述
该目录下有示例examples目录,当然也可以在arduino中打开。
在这里插入图片描述
注意不要直接上传,因为还需要进行设置。参见下一章

3.2 方法2——github中下载源码

https://github.com/ThingPulse/esp8266-oled-ssd1306
在这里插入图片描述
下载好后可以直接通过arduino中选择"添加.zip库"添加,也可以直接解压到arduino库路径
在这里插入图片描述

4 修改代码适配硬件

打开示例代码,可以看到其实是支持ssd1306和sh1106的,两者需要进行区分。

1 修改头文件和参数类型

//sh1106
#include "SH1106Wire.h"
SH1106Wire display(0x3c, SDA, SCL);   

//SSD1306
#include "SSD1306Wire.h"
SSD1306Wire display(0x3c, SDA, SCL);   

需要注意,有点驱动设置0x3c为SH1106,0x3D为SSD1306,看驱动定义。

2 修改SDA SCL
如第二章介绍的,查看电路图知道了对应的IO口

//sh1106
#include "SH1106Wire.h"
SH1106Wire display(0x3c, 23, 22);   

//SSD1306
#include "SSD1306Wire.h"
SSD1306Wire display(0x3c, 23, 22);   

至此修改就完成了,尝试下运行示例,是否成功。
后续可以根据提供的示例修改显示内容。

结果

  1. SSD1306DrawingDemo
    在这里插入图片描述
    在这里插入图片描述

显示反了,后续再看。

  1. SSD1306ClockDemo
    在这里插入图片描述
    在这里插入图片描述
    这个看起来是定时切换画面的,可以尝试加上sensor感应转动时切换。
  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值