透明图形OLED分接连接指南

γ
贡献者: 液体洗涤器埃尔C
喜爱的 最喜欢的

介绍

未来就在这里!你问了我们送了-我们的QWIIC透明图形OLED分接允许您在透明屏幕上显示自定义图像,使用C或SPI连接。

使用Qwiic连接器,您可以快速(ha ha)并轻松开始使用自己的图像。然而,我们还提供了0.1英寸的插脚,以防您喜欢使用面包板。在黑暗中明亮地照亮,在白天仍然可见,这个OLED的显示区域为128x64像素,其中128x56是完全透明的。OLED的控制基于我们新的超显示库。

金沙线上娱乐场Sparkfun透明图形OLED突破(QWIIC)

金沙线上娱乐场Sparkfun透明图形OLED突破(QWIIC)

LCD-15173
39.95美元

驱动这个显示器所需的Arduino草图需要相当多的动态内存,这意味着它不能像atmega328那样安装在较小的控制器上。任何RAM较大的控制器都应该没有问题。在本教程中,我们正在使用ESP32 Thing Plus.

所需材料

要遵循本教程,你需要以下材料。你可能不需要一切,取决于你有什么。把它加入你的购物车,通读指南,并根据需要调整推车。

工具

如果您想使用沿板底部断开的GPIO管脚,你需要在它们上面焊接一些焊头,这样你就需要一个烙铁,焊料,和一般焊接附件.

无铅焊锡-100克线轴

无铅焊锡-100克线轴

TL—09325
7.95美元
WELLER WLC100焊接站

WELLER WLC100焊接站

TL—14228
44.95美元

建议阅读

如果你不熟悉QWIIC系统,我们推荐阅读这里概述一下.

QWIIC连接系统
QWIIC连接系统

如果您不熟悉以下教程,我们还建议您查看它们。

串行通信

异步串行通信概念:数据包,信号电平,波特率,UART和更多!

I2C

I2c简介,目前使用的主要嵌入式通信协议之一。

串行终端基础知识

本教程将向您展示如何使用各种终端仿真器应用程序与串行设备通信。
新!

ESP32 Thing Plus连接指南

在Arduino使用ESP32 Wroom的WiFi/蓝牙系统芯片连接ESP32 Thing Plus指南。

关于超显示你应该知道的一切

这是一个深入介绍SparkFun超显示Arduino库的教程。金沙线上娱乐场

硬件概述

让我们看看我们正在处理的QWIIC的一些特性,所以我们知道在董事会之外会发生什么。

特性 范围
工作电压 1.65 V-3.3V
供电电流 400毫安
C地址 0x30(默认),0x31

图形显示

图形显示是所有有趣的事情发生的地方。玻璃本身尺寸为42mm x 27.16mm,像素显示屏为35.5 x 18毫米。它包含128x64像素,其中128x56是透明的。

显示屏

图形显示

QWIIC连接器

板上有两个QWIIC连接器,如果您选择这样做,您可以菊花链板。如果你不熟悉我们的QWIIC系统,前往我们的QWICIC页面看看优势!

QWIIC连接器

QWIIC连接器

GPIO管脚

当你看到GPIO管脚时,你会注意到标签从一边到另一边是不同的。一侧标有IC另一侧标有SPI。


C标签 SPI标签

功率发光二极管

这个坏孩子在电路板正确通电后会亮起来。

功率发光二极管

功率发光二极管

您可以通过切断板背面的LED跳线来禁用电源LED。

电源LED跳线

电源LED跳线

JPX跳线

JPX跳线用于改变IC地址或配置板以使用SPI通信。另外两个跳线允许您断开电源指示灯并断开Ic连接多个QWIIC设备时的上拉电阻。

跳跃者 功能
JP1 关闭时保持芯片选择线低。靠近我C开放式SPI
JP2 选择i中的地址C模式。关闭的默认为0x30打开0x31。打开SPI模式以释放D/C销
JP3 用于选择iC或SPI模式。靠近我C开放式SPI
JP4 这个跳线应该为我关上C,打开SPI。此连接允许SDA双向

JP1-JP4

JPX跳线

C上拉跳投

C设备包含明沟,所以我们在我们的电路板上包括电阻,以允许这些设备拉高引脚。如果你有大量的C装置被连接在一起。如果你计划将多个Qwiic板串在一起,你需要剪这个我C上拉跳线.

I2c上拉跳线

C型跳远运动员

硬件连接

现在你知道你的漏板上有什么可用的了,我们可以查看连接到你项目大脑的选项。金沙线上娱乐场有两个选项可以使用-要么我C或SPI-它们都有各自的优点和缺点。继续阅读,为您的设置选择最佳选项。

C(QWIC)

开始使用透明图形OLED的最简单方法是使用QWIC电缆与QWIIC兼容的微控制器(如ESP32 Thing Plus)您也可以使用QWIIC电路板电缆附加任何Ic型微控制器,或者走风景优美的路线焊料在所有的IC通过电路板上的连接线连接到电镀板上。

QWIC连接器 I2C引脚

所以为什么要用我C?很容易与QWIIC系统连接,您可以在同一个总线上放置两个透明的图形分隔线,而无需再使用任何微控制器插脚。不过,这种简单性是以性能为代价的。i的最大时钟速度C总线为400 kHz,在数据传输中,还有额外的开销来指示哪些字节是数据,哪些是命令。这意味着我C连接最适合显示静态图像。

突破销 微控制器引脚要求
GND 接地引脚。把它们连接起来,使两个装置的电压一致。
3V3 3.3V电源针,可输出高达400 mA
SDA sda-所选I2c端口的双向数据线
SCL SCL-所选I2c端口的时钟线
SA0 可选的:更改断接的I2c地址。确保切割JP2
RST 可选的:通过低脉冲将断接重置为已知状态

SPI

SPI解决了IC速度问题。使用SPI时,有一个指示数据或命令的控制信号,最大时钟速度为10兆赫——使SPI的速度提高50倍!然而,它没有极化QWIIC连接器和低引脚使用的相同便利性。你需要焊料到别针。

SPI引脚

您可以使用SPI连接任意数量的分支。对于n个显示器,您需要使用至少n+3个数据管脚。那是因为摩斯人,SCLKD/C管脚可以在显示器之间共享,但每个分接头都需要自己的专用芯片选择(CS)管脚。

突破销 微控制器引脚要求
反恐精英 一个GPIO引脚,与突破赛交谈时设低
付款交单 一个GPIO引脚,指示字节是数据还是命令
SCLK 所选SPI端口的时钟输出
莫西 所选SPI端口的数据输出
3V3 3.3V电源针,可输出高达400 mA
GND 接地引脚。把它们连接起来,使两个装置的电压一致。

软件设置和编程

注:此示例假定您正在桌面上使用最新版本的Arduino IDE。如果这是你第一次使用Arduino,请回顾我们的教程 安装Arduino IDE。如果您以前没有安装过Arduino库,请查看我们的 安装指南。

驱动程序和板附加组件

取决于您的开发委员会,您可能需要安装驱动程序和板附加组件。对于本教程的范围,我们将使用ESP32 Thing Plus。如果你还没有,确保按照我们的说明安装驱动程序和ESP32 Arduino核心文件。ESP32 Thing Plus连接指南.

安装ESP32板附加文件
ESP32的软件设置

Arduino图书馆

透明图形化OLED分接的软件建立在SparkFun开发的超显示库上。金沙线上娱乐场如果您不熟悉这个抽象库的工作原理,前往我们的关于超显示你应该知道的一切辅导的。

关于超显示你应该知道的一切

2月20日,二千零一十九

这是一个深入介绍SparkFun超显示Arduino库的教程。金沙线上娱乐场

Hyperdisplay是一个抽象的库,需要多个层才能正常工作。要使透明图形OLED工作,你需要我们的基地超显示库,这个超显示SSD1309 Arduino库,而这个名字虽然有点痛苦,但很有见地超显示ug2856klbag01 Arduino库.您可以通过Arduino库管理器通过搜索“获取这些库。”超显示库““超显示SSD1309““超显示透明图形OLED“分别。您可以从各自的GitHub页面下载所需的库或下载以下内容*拉链包含所有三个要手动安装的库的文件:

如果手动下载库,解压它们并将所有三个库复制到阿尔杜诺>图书馆文件夹,您机器上的任何位置。

将超显示库复制到Arduino库文件夹

很难看到?单击图像以更近距离查看。

实例

Hyperdisplay_g2856klbag01_Arduinolibrary中包含三个示例,可帮助您开始使用透明图形OLED分组。如果您还没有从上述位置下载库,单击下面的按钮下载库捆绑包。解压并复制到阿尔杜诺>图书馆文件夹。

如果您使用ESP32 Thing Plus Board(与我们一样)跟随本教程,确保将板定义设置为ADAVORY ESP32羽毛.

选择adafruit羽毛板定义

示例1:显示测试

本例的目的是为您的显示充当“Hello World”消息。上载此草图将有助于确认您已正确跟踪硬件连接。草图经过了几个不同的显示测试,从定制的Sparkfun徽标显示开始。金沙线上娱乐场

要显示徽标,欧文快速地写了一个巨蟒脚本,看了一张JPG图片,然后写了出来,逐像素,用于显示的功能。我们在这里包括了他的剧本和我们的图片——看一看!只要稍加修改,它就可以在您自己的应用程序中发挥作用。

开始,要么选择文件>实例>金沙线上娱乐场Sparkfun超显示透明图形OLED库>示例1显示测试或者将下面的代码复制并粘贴到新的Arduino窗口中。

语言:c/*验证Qwiic透明Grahical OLED是否正确连接并正常工作。作者:Owen Lyke Sp金沙线上娱乐场arkfun Electronics日期:2月26日2019年执照:麻省理工学院。有关更多信息,请参阅许可证文件,但基本上可以使用此代码执行任何操作。想支持开源硬件吗?金沙官方娱乐场从Sparkfun买一块木板!金沙线上娱乐场https://www.金沙线上娱乐场sparkfun.com/products/15173图形库就像一个三层蛋糕。它们来自自上而下的https://github.com/sparkfun/sparkfun_hy金沙线上娱乐场perdisplay https://github.com/sparkfun/hyperdisplay_ssd1309_arduinolibrary https://github.com/sparkfun/hyperdisplay_ug2856klbag01_arduinolibrary硬件兼容性-此板上的IO插脚设计用于3.3V,因此如果您使用的是5V微控制器pl轻松使用水平移动器。注:Sparkfun开发板上的Qwiic连接器已经达金沙线上娱乐场到3.3V-此显示器依赖于微控制器中图形数据的副本,总共1024字节。这是UNO上可用的RAM的一半,因此很容易遇到与内存不足有关的恶意错误。我们建议使用内存更大的micro,比如samd21,ESP32,TENSIY等。硬件连接:选项1(I2c):如果您有QWIIC兼容板,并且计划使用I2c选项2(SPI),则使用QWIIC跳线进行连接:将SCLK和MOSI连接到您选择的SPI端口(UNO-like板上的SPI为13和11),同时将D/C和CS连接到您选择的两个未使用的GPIO引脚(并设置正确的引脚定义为低)不要忘记电源-连接3.3V和GND*/包括“hyperdisplay_g2856klbag01.h”//您的库可以安装在这里:http://librarymanager/all sparkfun_transparent_graphical_oled//层蛋糕的其余部分:http://librarymanager/all sparkfun_hyperdisplay_ssd1309//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////金沙线上娱乐场///////////////////////////////////////////////////////////////////////////////////////////////////////2/操作可选define cs_pin 4//仅当使用_spi==1 define dc_pin 5/时使用,仅当使用_spi==1 define use_spi 1/选择接口时使用。0=I2C,1=SPI//最终用户设置//对象声明。如果使用SPI ug2856klbag01,则每个接口选项都存在一个类;//声明一个基于SPI的透明OLED对象,名为mytoled else ug2856klbag01_i2c mytoled;//声明一个基于I2c的透明OLED对象,名为mytoled endif/*使用_spi*/void setup()serial.begin(9600);serial.println(f(“example1_displaytest:transparent graphical oled”));if use_spi_port.begin();mytoled.begin(cs_pin,DCPIN,斯皮尔波特);//BEGIN FOR SPI要求您提供CS和DC管脚号ELSE WIRE U PORT.BEGIN();mytoled.begin(接线端口,错误的,ssd1309_-ard-u未使用的_-pin);//begin for i2c具有每个参数线的默认值。setclock(400000);endif/*usse_spi*///不要在内存小的板上显示徽标if!定义(uu avr_atmega328p_uuu)&!defined(uuAvr_Atmega168_uuuu)ShowLogo();//ShowLogo函数是一种不使用
           
            #endif void loop()linetest();延迟(500);矩形();延迟(500);循环();delay(500);void linetest(void)mytoled.clearDisplay();对于(hd_hw_extent_t indi=0;indi<mytoled.xext;indi+=5)mytoled.lineset(0,0,indi,mytoled.yext-1,1);延迟(10);}对于(hd_hw_extent_t indi=0;indi<mytoled.yext;indi+=5)mytoled.lineset(0,mytoled.yext-1,mytoled.xext-1,mytoled.yext-indi-1,1);延迟(10);}对于(hd_hw_extent_t indi=0;indi<mytoled.xext;indi+=5)mytoled.lineset(mytoled.xext-1,mytoled.yext-1,mytoled.xext-indi-1,0,1);延迟(10);}对于(hd_hw_extent_t indi=0;indi<mytoled.yext;indi+=5)mytoled.lineset(mytoled.xext-1,0,0,indi,1);}}void rectest(void)mytoled.clearDisplay();对于(uint8_t indi=0;indi<mytoled.yext/2;indi+=1)mytoled.矩形集(mytoled.xext/2-1-indi,mytoled.yext/2-1-indi,印度mytoled.xext/2+1+indi,mytoled.yext/2+1+indi,假);延迟(50);}对于(uint8_t indi=0;indi<mytoled.yext/2;indi+=1)mytoled.矩形清除(mytoled.xext/2-1-indi,mytoled.yext/2-1-indi,印度mytoled.xext/2+1+indi,mytoled.yext/2+1+indi,假);延迟(50);}对于(uint8_t indi=0;indi<mytoled.yext/2;indi+=1)mytoled.矩形集(mytoled.xext/2-1-indi,mytoled.yext/2-1-indi,印度mytoled.xext/2+1+indi,mytoled.yext/2+1+indi,假);延迟(50);}}void CircleTest(void)mytoled.clearDisplay();对于(uint8_t indi=0;indi<(mytoled.xext/2-1);indi++)mytoled.circleset((mytoled.xext/2-1),(mytoled.yext/2-1),英迪假);延迟(10);}mytoled.circleset((mytoled.xext/2-1),(mytoled.yext/2-1),MytoDel.XExt/2,真的!定义(uu avr_atmega328p_uuu)&!defined(uuavr_atmega168_uuuuuuuvoid showlogo(void)mytoled.setContrastControl(0);mytoled.pixelset(84,3);mytoled.pixelset(85,3);mytoled.pixelset(86,3);mytoled.pixelset(87,3);mytoled.pixelset(88,3);mytoled.pixelset(83,4);mytoled.pixelset(84,4);mytoled.pixelset(85,4);mytoled.pixelset(86,4);mytoled.pixelset(87,4);mytoled.pixelset(82,5);mytoled.pixelset(83,5);mytoled.pixelset(84,5);mytoled.pixelset(85,5);mytoled.pixelset(86,5);mytoled.pixelset(82,6);mytoled.pixelset(83,6);mytoled.pixelset(84,6);mytoled.pixelset(85,6);mytoled.pixelset(86,6);mytoled.pixelset(82,7);mytoled.pixelset(83,7);mytoled.pixelset(84,7);mytoled.pixelset(85,7);mytoled.pixelset(86,7);mytoled.pixelset(82,8);mytoled.pixelset(83,8);mytoled.pixelset(84,8);mytoled.pixelset(85,8);mytoled.pixelset(86,8);mytoled.pixelset(87,8);mytoled.pixelset(92,8);mytoled.pixelset(83,9);mytoled.pixelset(84,9);mytoled.pixelset(85,9);mytoled.pixelset(86,9);mytoled.pixelset(87,9);mytoled.pixelset(88,9);mytoled.pixelset(89,9);mytoled.pixelset(91,9);mytoled.pixelset(92,9);mytoled.pixelset(93,9);mytoled.pixelset(84,10);mytoled.pixelset(85,10);mytoled.pixelset(86,10);mytoled.pixelset(87,10);mytoled.pixelset(88,10);mytoled.pixelset(89,10);mytoled.pixelset(90,10);mytoled.pixelset(91,10);mytoled.pixelset(92,10);mytoled.pixelset(93,10);mytoled.pixelset(85,11);mytoled.pixelset(86,11);mytoled.pixelset(87,11);mytoled.pixelset(88,11);mytoled.pixelset(89,11);mytoled.pixelset(90,11);mytoled.pixelset(91,11);mytoled.pixelset(92,11);mytoled.pixelset(93,11);mytoled.pixelset(78,12);mytoled.pixelset(79,12);mytoled.pixelset(85,12);mytoled.pixelset(86,12);mytoled.pixelset(87,12);mytoled.pixelset(88,12);mytoled.pixelset(89,12);mytoled.pixelset(90,12);mytoled.pixelset(91,12);mytoled.pixelset(92,12);mytoled.pixelset(93,12);mytoled.pixelset(94,12);mytoled.pixelset(77,13);mytoled.pixelset(78,13);mytoled.pixelset(79,13);mytoled.pixelset(85,13);mytoled.pixelset(86,13);mytoled.pixelset(87,13);mytoled.pixelset(88,13);mytoled.pixelset(89,13);mytoled.pixelset(90,13);mytoled.pixelset(91,13);mytoled.pixelset(92,13);mytoled.pixelset(93,13);mytoled.pixelset(94,13);mytoled.pixelset(77,14);mytoled.pixelset(78,14);mytoled.pixelset(79,14);mytoled.pixelset(85,14);mytoled.pixelset(86,14);mytoled.pixelset(87,14);mytoled.pixelset(88,14);mytoled.pixelset(89,14);mytoled.pixelset(90,14);mytoled.pixelset(91,14);mytoled.pixelset(92,14);mytoled.pixelset(93,14);mytoled.pixelset(94,14);mytoled.pixelset(76,15);mytoled.pixelset(77,15);mytoled.pixelset(78,15);mytoled.pixelset(79,15);mytoled.pixelset(80,15);mytoled.pixelset(84,15);mytoled.pixelset(85,15);mytoled.pixelset(86,15);mytoled.pixelset(87,15);mytoled.pixelset(88,15);mytoled.pixelset(89,15);mytoled.pixelset(90,15);mytoled.pixelset(91,15);mytoled.pixelset(92,15);mytoled.pixelset(93,15);mytoled.pixelset(94,15);mytoled.pixelset(76,16);mytoled.pixelset(77,16);mytoled.pixelset(78,16);mytoled.pixelset(79,16);mytoled.pixelset(80,16);mytoled.pixelset(81,16);mytoled.pixelset(82,16);mytoled.pixelset(83,16);mytoled.pixelset(84,16);mytoled.pixelset(85,16);mytoled.pixelset(86,16);mytoled.pixelset(87,16);mytoled.pixelset(88,16);mytoled.pixelset(89,16);mytoled.pixelset(90,16);mytoled.pixelset(91,16);mytoled.pixelset(92,16);mytoled.pixelset(93,16);mytoled.pixelset(94,16);mytoled.pixelset(76,17);mytoled.pixelset(77,17);mytoled.pixelset(78,17);mytoled.pixelset(79,17);mytoled.pixelset(80,17);mytoled.pixelset(81,17);mytoled.pixelset(82,17);mytoled.pixelset(83,17);mytoled.pixelset(84,17);mytoled.pixelset(85,17);mytoled.pixelset(86,17);mytoled.pixelset(87,17);mytoled.pixelset(88,17);mytoled.pixelset(89,17);mytoled.pixelset(90,17);mytoled.pixelset(91,17);mytoled.pixelset(92,17);mytoled.pixelset(93,17);mytoled.pixelset(76,18);mytoled.pixelset(77,18);mytoled.pixelset(78,18);mytoled.pixelset(79,18);mytoled.pixelset(80,18);mytoled.pixelset(81,18);mytoled.pixelset(82,18);mytoled.pixelset(83,18);mytoled.pixelset(84,18);mytoled.pixelset(85,18);mytoled.pixelset(86,18);mytoled.pixelset(87,18);mytoled.pixelset(88,18);mytoled.pixelset(89,18);mytoled.pixelset(90,18);mytoled.pixelset(91,18);mytoled.pixelset(92,18);mytoled.pixelset(93,18);mytoled.pixelset(76,19);mytoled.pixelset(77,19);mytoled.pixelset(78,19);mytoled.pixelset(79,19);mytoled.pixelset(80,19);mytoled.pixelset(81,19);mytoled.pixelset(82,19);mytoled.pixelset(83,19);mytoled.pixelset(84,19);mytoled.pixelset(85,19);mytoled.pixelset(86,19);mytoled.pixelset(87,19);mytoled.pixelset(88,19);mytoled.pixelset(89,19);mytoled.pixelset(90,19);mytoled.pixelset(91,19);mytoled.pixelset(92,19);mytoled.pixelset(76,20);mytoled.pixelset(77,20);mytoled.pixelset(78,20);mytoled.pixelset(79,20);mytoled.pixelset(80,20);mytoled.pixelset(81,20);mytoled.pixelset(82,20);mytoled.pixelset(83,20);mytoled.pixelset(84,20);mytoled.pixelset(85,20);mytoled.pixelset(86,20);mytoled.pixelset(87,20);mytoled.pixelset(88,20);mytoled.pixelset(89,20);mytoled.pixelset(90,20);mytoled.pixelset(91,20);mytoled.pixelset(92,20);mytoled.pixelset(76,21);mytoled.pixelset(77,21);mytoled.pixelset(78,21);mytoled.pixelset(79,21);mytoled.pixelset(80,21);mytoled.pixelset(81,21);mytoled.pixelset(82,21);mytoled.pixelset(83,21);mytoled.pixelset(84,21);mytoled.pixelset(85,21);mytoled.pixelset(86,21);mytoled.pixelset(87,21);mytoled.pixelset(88,21);mytoled.pixelset(89,21);mytoled.pixelset(90,21);mytoled.pixelset(91,21);mytoled.pixelset(76,22);mytoled.pixelset(77,22);mytoled.pixelset(78,22);mytoled.pixelset(79,22);mytoled.pixelset(80,22);mytoled.pixelset(81,22);mytoled.pixelset(82,22);mytoled.pixelset(83,22);mytoled.pixelset(84,22);mytoled.pixelset(85,22);mytoled.pixelset(86,22);mytoled.pixelset(87,22);mytoled.pixelset(88,22);mytoled.pixelset(89,22);mytoled.pixelset(76,23);mytoled.pixelset(77,23);mytoled.pixelset(78,23);mytoled.pixelset(79,23);mytoled.pixelset(80,23);mytoled.pixelset(81,23);mytoled.pixelset(82,23);mytoled.pixelset(83,23);mytoled.pixelset(84,23);mytoled.pixelset(85,23);mytoled.pixelset(86,23);mytoled.pixelset(87,23);mytoled.pixelset(76,24);mytoled.pixelset(77,24);mytoled.pixelset(78,24);mytoled.pixelset(79,24);mytoled.pixelset(80,24);mytoled.pixelset(81,24);mytoled.pixelset(76,25);mytoled.pixelset(77,25);mytoled.pixelset(78,25);mytoled.pixelset(79,25);mytoled.pixelset(80,25);mytoled.pixelset(76,26);mytoled.pixelset(77,26);mytoled.pixelset(78,26);mytoled.pixelset(79,26);mytoled.pixelset(76,27);mytoled.pixelset(77,27);mytoled.pixelset(78,27);mytoled.pixelset(76,28);mytoled.pixelset(77,28);mytoled.pixelset(76,29);mytoled.pixelset(88,29);mytoled.pixelset(89,29);mytoled.pixelset(90,29);mytoled.pixelset(91,29);mytoled.pixelset(92,29);mytoled.pixelset(69,30);mytoled.pixelset(70,30);mytoled.pixelset(76,30);mytoled.pixelset(87,30);mytoled.pixelset(88,30);mytoled.pixelset(89,30);mytoled.pixelset(90,30);mytoled.pixelset(91,30);mytoled.pixelset(92,30);mytoled.pixelset(67,31);mytoled.pixelset(68,31);mytoled.pixelset(69,31);mytoled.pixelset(70,31);mytoled.pixelset(86,31);mytoled.pixelset(87,31);mytoled.pixelset(88,31);mytoled.pixelset(89,31);mytoled.pixelset(90,31);mytoled.pixelset(91,31);mytoled.pixelset(92,31);mytoled.pixelset(67,32);mytoled.pixelset(68,32);mytoled.pixelset(69,32);mytoled.pixelset(70,32);mytoled.pixelset(86,32);mytoled.pixelset(87,32);mytoled.pixelset(88,32);mytoled.pixelset(89,32);mytoled.pixelset(67,33);mytoled.pixelset(68,33);mytoled.pixelset(69,33);mytoled.pixelset(70,33);mytoled.pixelset(86,33);mytoled.pixelset(87,33);mytoled.pixelset(88,33);mytoled.pixelset(67,34);mytoled.pixelset(68,34);mytoled.pixelset(69,34);mytoled.pixelset(70,34);mytoled.pixelset(86,34);mytoled.pixelset(87,34);mytoled.pixelset(88,34);mytoled.pixelset(6,35);mytoled.pixelset(7,35);mytoled.pixelset(8,35);mytoled.pixelset(9,35);mytoled.pixelset(10,35);mytoled.pixelset(11,35);mytoled.pixelset(12,35);mytoled.pixelset(13,35);mytoled.pixelset(22,35);mytoled.pixelset(26,35);mytoled.pixelset(27,35);mytoled.pixelset(28,35);mytoled.pixelset(29,35);mytoled.pixelset(30,35);mytoled.pixelset(31,35);mytoled.pixelset(41,35);mytoled.pixelset(42,35);mytoled.pixelset(43,35);mytoled.pixelset(44,35);mytoled.pixelset(45,35);mytoled.pixelset(46,35);mytoled.pixelset(47,35);mytoled.pixelset(48,35);mytoled.pixelset(61,35);mytoled.pixelset(62,35);mytoled.pixelset(63,35);mytoled.pixelset(64,35);mytoled.pixelset(67,35);mytoled.pixelset(68,35);mytoled.pixelset(69,35);mytoled.pixelset(70,35);mytoled.pixelset(77,35);mytoled.pixelset(78,35);mytoled.pixelset(79,35);mytoled.pixelset(80,35);mytoled.pixelset(84,35);mytoled.pixelset(85,35);mytoled.pixelset(86,35);mytoled.pixelset(87,35);mytoled.pixelset(88,35);mytoled.pixelset(89,35);mytoled.pixelset(90,35);mytoled.pixelset(91,35);mytoled.pixelset(92,35);mytoled.pixelset(94,35);mytoled.pixelset(95,35);mytoled.pixelset(96,35);mytoled.pixelset(97,35);mytoled.pixelset(105,35);mytoled.pixelset(106,35);mytoled.pixelset(107,35);mytoled.pixelset(108,35);mytoled.pixelset(112,35);mytoled.pixelset(113,35);mytoled.pixelset(114,35);mytoled.pixelset(118,35);mytoled.pixelset(119,35);mytoled.pixelset(120,35);mytoled.pixelset(121,35);mytoled.pixelset(122,35);mytoled.pixelset(123,35);mytoled.pixelset(5,36);mytoled.pixelset(6,36);mytoled.pixelset(7,36);mytoled.pixelset(8,36);mytoled.pixelset(9,36);mytoled.pixelset(10,36);mytoled.pixelset(11,36);mytoled.pixelset(12,36);mytoled.pixelset(13,36);mytoled.pixelset(14,36);mytoled.pixelset(20,36);mytoled.pixelset(21,36);mytoled.pixelset(22,36);mytoled.pixelset(24,36);mytoled.pixelset(25,36);mytoled.pixelset(26,36);mytoled.pixelset(27,36);mytoled.pixelset(28,36);mytoled.pixelset(29,36);mytoled.pixelset(30,36);mytoled.pixelset(31,36);mytoled.pixelset(32,36);mytoled.pixelset(39,36);mytoled.pixelset(40,36);mytoled.pixelset(41,36);mytoled.pixelset(42,36);mytoled.pixelset(43,36);mytoled.pixelset(44,36);mytoled.pixelset(45,36);mytoled.pixelset(46,36);mytoled.pixelset(47,36);mytoled.pixelset(48,36);mytoled.pixelset(49,36);mytoled.pixelset(50,36);mytoled.pixelset(55,36);mytoled.pixelset(56,36);mytoled.pixelset(57,36);mytoled.pixelset(58,36);mytoled.pixelset(60,36);mytoled.pixelset(61,36);mytoled.pixelset(62,36);mytoled.pixelset(63,36);mytoled.pixelset(64,36);mytoled.pixelset(67,36);mytoled.pixelset(68,36);mytoled.pixelset(69,36);mytoled.pixelset(70,36);mytoled.pixelset(76,36);mytoled.pixelset(77,36);mytoled.pixelset(78,36);mytoled.pixelset(79,36);mytoled.pixelset(83,36);mytoled.pixelset(84,36);mytoled.pixelset(85,36);mytoled.pixelset(86,36);mytoled.pixelset(87,36);mytoled.pixelset(88,36);mytoled.pixelset(89,36);mytoled.pixelset(90,36);mytoled.pixelset(91,36);mytoled.pixelset(92,36);mytoled.pixelset(94,36);mytoled.pixelset(95,36);mytoled.pixelset(96,36);mytoled.pixelset(97,36);mytoled.pixelset(105,36);mytoled.pixelset(106,36);mytoled.pixelset(107,36);mytoled.pixelset(108,36);mytoled.pixelset(112,36);mytoled.pixelset(113,36);mytoled.pixelset(114,36);mytoled.pixelset(117,36);mytoled.pixelset(118,36);mytoled.pixelset(119,36);mytoled.pixelset(120,36);mytoled.pixelset(121,36);mytoled.pixelset(122,36);mytoled.pixelset(123,36);mytoled.pixelset(124,36);mytoled.pixelset(4,37);mytoled.pixelset(5,37);mytoled.pixelset(6,37);mytoled.pixelset(7,37);mytoled.pixelset(12,37);mytoled.pixelset(13,37);mytoled.pixelset(14,37);mytoled.pixelset(15,37);mytoled.pixelset(20,37);mytoled.pixelset(21,37);mytoled.pixelset(22,37);mytoled.pixelset(23,37);mytoled.pixelset(24,37);mytoled.pixelset(25,37);mytoled.pixelset(26,37);mytoled.pixelset(27,37);mytoled.pixelset(28,37);mytoled.pixelset(29,37);mytoled.pixelset(30,37);mytoled.pixelset(31,37);mytoled.pixelset(32,37);mytoled.pixelset(33,37);mytoled.pixelset(38,37);mytoled.pixelset(39,37);mytoled.pixelset(40,37);mytoled.pixelset(41,37);mytoled.pixelset(42,37);mytoled.pixelset(47,37);mytoled.pixelset(48,37);mytoled.pixelset(49,37);mytoled.pixelset(50,37);mytoled.pixelset(51,37);mytoled.pixelset(55,37);mytoled.pixelset(56,37);mytoled.pixelset(57,37);mytoled.pixelset(58,37);mytoled.pixelset(59,37);mytoled.pixelset(60,37);mytoled.pixelset(61,37);mytoled.pixelset(62,37);mytoled.pixelset(63,37);mytoled.pixelset(64,37);mytoled.pixelset(67,37);mytoled.pixelset(68,37);mytoled.pixelset(69,37);mytoled.pixelset(70,37);mytoled.pixelset(75,37);mytoled.pixelset(76,37);mytoled.pixelset(77,37);mytoled.pixelset(78,37);mytoled.pixelset(82,37);mytoled.pixelset(83,37);mytoled.pixelset(84,37);mytoled.pixelset(85,37);mytoled.pixelset(86,37);mytoled.pixelset(87,37);mytoled.pixelset(88,37);mytoled.pixelset(89,37);mytoled.pixelset(90,37);mytoled.pixelset(91,37);mytoled.pixelset(92,37);mytoled.pixelset(94,37);mytoled.pixelset(95,37);mytoled.pixelset(96,37);mytoled.pixelset(97,37);mytoled.pixelset(105,37);mytoled.pixelset(106,37);mytoled.pixelset(107,37);mytoled.pixelset(108,37);mytoled.pixelset(112,37);mytoled.pixelset(113,37);mytoled.pixelset(114,37);mytoled.pixelset(115,37);mytoled.pixelset(116,37);mytoled.pixelset(117,37);mytoled.pixelset(118,37);mytoled.pixelset(119,37);mytoled.pixelset(120,37);mytoled.pixelset(121,37);mytoled.pixelset(122,37);mytoled.pixelset(123,37);mytoled.pixelset(124,37);mytoled.pixelset(125,37);mytoled.pixelset(3,38);mytoled.pixelset(4,38);mytoled.pixelset(5,38);mytoled.pixelset(6,38);mytoled.pixelset(13,38);mytoled.pixelset(14,38);mytoled.pixelset(15,38);mytoled.pixelset(16,38);mytoled.pixelset(20,38);mytoled.pixelset(21,38);mytoled.pixelset(22,38);mytoled.pixelset(23,38);mytoled.pixelset(24,38);mytoled.pixelset(30,38);mytoled.pixelset(31,38);mytoled.pixelset(32,38);mytoled.pixelset(33,38);mytoled.pixelset(38,38);mytoled.pixelset(39,38);mytoled.pixelset(40,38);mytoled.pixelset(41,38);mytoled.pixelset(48,38);mytoled.pixelset(49,38);mytoled.pixelset(50,38);mytoled.pixelset(51,38);mytoled.pixelset(55,38);mytoled.pixelset(56,38);mytoled.pixelset(57,38);mytoled.pixelset(58,38);mytoled.pixelset(59,38);mytoled.pixelset(60,38);mytoled.pixelset(61,38);mytoled.pixelset(64,38);mytoled.pixelset(67,38);mytoled.pixelset(68,38);mytoled.pixelset(69,38);mytoled.pixelset(70,38);mytoled.pixelset(74,38);mytoled.pixelset(75,38);mytoled.pixelset(76,38);mytoled.pixelset(77,38);mytoled.pixelset(86,38);mytoled.pixelset(87,38);mytoled.pixelset(88,38);mytoled.pixelset(94,38);mytoled.pixelset(95,38);mytoled.pixelset(96,38);mytoled.pixelset(97,38);mytoled.pixelset(105,38);mytoled.pixelset(106,38);mytoled.pixelset(107,38);mytoled.pixelset(108,38);mytoled.pixelset(112,38);mytoled.pixelset(113,38);mytoled.pixelset(114,38);mytoled.pixelset(115,38);mytoled.pixelset(116,38);mytoled.pixelset(121,38);mytoled.pixelset(122,38);mytoled.pixelset(123,38);mytoled.pixelset(124,38);mytoled.pixelset(125,38);mytoled.pixelset(3,39);mytoled.pixelset(4,39);mytoled.pixelset(5,39);mytoled.pixelset(6,39);mytoled.pixelset(20,39);mytoled.pixelset(21,39);mytoled.pixelset(22,39);mytoled.pixelset(23,39);mytoled.pixelset(31,39);mytoled.pixelset(32,39);mytoled.pixelset(33,39);mytoled.pixelset(34,39);mytoled.pixelset(38,39);mytoled.pixelset(39,39);mytoled.pixelset(40,39);mytoled.pixelset(41,39);mytoled.pixelset(48,39);mytoled.pixelset(49,39);mytoled.pixelset(50,39);mytoled.pixelset(51,39);mytoled.pixelset(55,39);mytoled.pixelset(56,39);mytoled.pixelset(57,39);mytoled.pixelset(58,39);mytoled.pixelset(59,39);mytoled.pixelset(67,39);mytoled.pixelset(68,39);mytoled.pixelset(69,39);mytoled.pixelset(70,39);mytoled.pixelset(73,39);mytoled.pixelset(74,39);mytoled.pixelset(75,39);mytoled.pixelset(76,39);mytoled.pixelset(86,39);mytoled.pixelset(87,39);mytoled.pixelset(88,39);mytoled.pixelset(94,39);mytoled.pixelset(95,39);mytoled.pixelset(96,39);mytoled.pixelset(97,39);mytoled.pixelset(105,39);mytoled.pixelset(106,39);mytoled.pixelset(107,39);mytoled.pixelset(108,39);mytoled.pixelset(112,39);mytoled.pixelset(113,39);mytoled.pixelset(114,39);mytoled.pixelset(115,39);mytoled.pixelset(122,39);mytoled.pixelset(123,39);mytoled.pixelset(124,39);mytoled.pixelset(125,39);mytoled.pixelset(3,40);mytoled.pixelset(4,40);mytoled.pixelset(5,40);mytoled.pixelset(6,40);mytoled.pixelset(7,40);mytoled.pixelset(20,40);mytoled.pixelset(21,40);mytoled.pixelset(22,40);mytoled.pixelset(23,40);mytoled.pixelset(31,40);mytoled.pixelset(32,40);mytoled.pixelset(33,40);mytoled.pixelset(34,40);mytoled.pixelset(48,40);mytoled.pixelset(49,40);mytoled.pixelset(50,40);mytoled.pixelset(51,40);mytoled.pixelset(55,40);mytoled.pixelset(56,40);mytoled.pixelset(57,40);mytoled.pixelset(58,40);mytoled.pixelset(59,40);mytoled.pixelset(67,40);mytoled.pixelset(68,40);mytoled.pixelset(69,40);mytoled.pixelset(70,40);mytoled.pixelset(72,40);mytoled.pixelset(73,40);mytoled.pixelset(74,40);mytoled.pixelset(75,40);mytoled.pixelset(86,40);mytoled.pixelset(87,40);mytoled.pixelset(88,40);mytoled.pixelset(94,40);mytoled.pixelset(95,40);mytoled.pixelset(96,40);mytoled.pixelset(97,40);mytoled.pixelset(105,40);mytoled.pixelset(106,40);mytoled.pixelset(107,40);mytoled.pixelset(108,40);mytoled.pixelset(112,40);mytoled.pixelset(113,40);mytoled.pixelset(114,40);mytoled.pixelset(115,40);mytoled.pixelset(122,40);mytoled.pixelset(123,40);mytoled.pixelset(124,40);mytoled.pixelset(125,40);mytoled.pixelset(4,41);mytoled.pixelset(5,41);mytoled.pixelset(6,41);mytoled.pixelset(7,41);mytoled.pixelset(8,41);mytoled.pixelset(9,41);mytoled.pixelset(10,41);mytoled.pixelset(11,41);mytoled.pixelset(20,41);mytoled.pixelset(21,41);mytoled.pixelset(22,41);mytoled.pixelset(31,41);mytoled.pixelset(32,41);mytoled.pixelset(33,41);mytoled.pixelset(34,41);mytoled.pixelset(46,41);mytoled.pixelset(47,41);mytoled.pixelset(48,41);mytoled.pixelset(49,41);mytoled.pixelset(50,41);mytoled.pixelset(51,41);mytoled.pixelset(55,41);mytoled.pixelset(56,41);mytoled.pixelset(57,41);mytoled.pixelset(58,41);mytoled.pixelset(67,41);mytoled.pixelset(68,41);mytoled.pixelset(69,41);mytoled.pixelset(70,41);mytoled.pixelset(71,41);mytoled.pixelset(72,41);mytoled.pixelset(73,41);mytoled.pixelset(74,41);mytoled.pixelset(75,41);mytoled.pixelset(86,41);mytoled.pixelset(87,41);mytoled.pixelset(88,41);mytoled.pixelset(94,41);mytoled.pixelset(95,41);mytoled.pixelset(96,41);mytoled.pixelset(97,41);mytoled.pixelset(105,41);mytoled.pixelset(106,41);mytoled.pixelset(107,41);mytoled.pixelset(108,41);mytoled.pixelset(112,41);mytoled.pixelset(113,41);mytoled.pixelset(114,41);mytoled.pixelset(115,41);mytoled.pixelset(122,41);mytoled.pixelset(123,41);mytoled.pixelset(124,41);mytoled.pixelset(125,41);mytoled.pixelset(5,42);mytoled.pixelset(6,42);mytoled.pixelset(7,42);mytoled.pixelset(8,42);mytoled.pixelset(9,42);mytoled.pixelset(10,42);mytoled.pixelset(11,42);mytoled.pixelset(12,42);mytoled.pixelset(13,42);mytoled.pixelset(14,42);mytoled.pixelset(20,42);mytoled.pixelset(21,42);mytoled.pixelset(22,42);mytoled.pixelset(32,42);mytoled.pixelset(33,42);mytoled.pixelset(34,42);mytoled.pixelset(41,42);mytoled.pixelset(42,42);mytoled.pixelset(43,42);mytoled.pixelset(44,42);mytoled.pixelset(45,42);mytoled.pixelset(46,42);mytoled.pixelset(47,42);mytoled.pixelset(48,42);mytoled.pixelset(49,42);mytoled.pixelset(50,42);mytoled.pixelset(51,42);mytoled.pixelset(55,42);mytoled.pixelset(56,42);mytoled.pixelset(57,42);mytoled.pixelset(58,42);mytoled.pixelset(67,42);mytoled.pixelset(68,42);mytoled.pixelset(69,42);mytoled.pixelset(70,42);mytoled.pixelset(71,42);mytoled.pixelset(72,42);mytoled.pixelset(73,42);mytoled.pixelset(74,42);mytoled.pixelset(75,42);mytoled.pixelset(76,42);mytoled.pixelset(86,42);mytoled.pixelset(87,42);mytoled.pixelset(88,42);mytoled.pixelset(94,42);mytoled.pixelset(95,42);mytoled.pixelset(96,42);mytoled.pixelset(97,42);mytoled.pixelset(105,42);mytoled.pixelset(106,42);mytoled.pixelset(107,42);mytoled.pixelset(108,42);mytoled.pixelset(112,42);mytoled.pixelset(113,42);mytoled.pixelset(114,42);mytoled.pixelset(115,42);mytoled.pixelset(122,42);mytoled.pixelset(123,42);mytoled.pixelset(124,42);mytoled.pixelset(125,42);mytoled.pixelset(7,43);mytoled.pixelset(8,43);mytoled.pixelset(9,43);mytoled.pixelset(10,43);mytoled.pixelset(11,43);mytoled.pixelset(12,43);mytoled.pixelset(13,43);mytoled.pixelset(14,43);mytoled.pixelset(15,43);mytoled.pixelset(20,43);mytoled.pixelset(21,43);mytoled.pixelset(22,43);mytoled.pixelset(32,43);mytoled.pixelset(33,43);mytoled.pixelset(34,43);mytoled.pixelset(39,43);mytoled.pixelset(40,43);mytoled.pixelset(41,43);mytoled.pixelset(42,43);mytoled.pixelset(43,43);mytoled.pixelset(44,43);mytoled.pixelset(45,43);mytoled.pixelset(48,43);mytoled.pixelset(49,43);mytoled.pixelset(50,43);mytoled.pixelset(51,43);mytoled.pixelset(55,43);mytoled.pixelset(56,43);mytoled.pixelset(57,43);mytoled.pixelset(58,43);mytoled.pixelset(67,43);mytoled.pixelset(68,43);mytoled.pixelset(69,43);mytoled.pixelset(70,43);mytoled.pixelset(71,43);mytoled.pixelset(72,43);mytoled.pixelset(73,43);mytoled.pixelset(74,43);mytoled.pixelset(75,43);mytoled.pixelset(76,43);mytoled.pixelset(86,43);mytoled.pixelset(87,43);mytoled.pixelset(88,43);mytoled.pixelset(94,43);mytoled.pixelset(95,43);mytoled.pixelset(96,43);mytoled.pixelset(97,43);mytoled.pixelset(105,43);mytoled.pixelset(106,43);mytoled.pixelset(107,43);mytoled.pixelset(108,43);mytoled.pixelset(112,43);mytoled.pixelset(113,43);mytoled.pixelset(114,43);mytoled.pixelset(115,43);mytoled.pixelset(122,43);mytoled.pixelset(123,43);mytoled.pixelset(124,43);mytoled.pixelset(125,43);mytoled.pixelset(11,44);mytoled.pixelset(12,44);mytoled.pixelset(13,44);mytoled.pixelset(14,44);mytoled.pixelset(15,44);mytoled.pixelset(16,44);mytoled.pixelset(20,44);mytoled.pixelset(21,44);mytoled.pixelset(22,44);mytoled.pixelset(31,44);mytoled.pixelset(32,44);mytoled.pixelset(33,44);mytoled.pixelset(34,44);mytoled.pixelset(38,44);mytoled.pixelset(39,44);mytoled.pixelset(40,44);mytoled.pixelset(41,44);mytoled.pixelset(48,44);mytoled.pixelset(49,44);mytoled.pixelset(50,44);mytoled.pixelset(51,44);mytoled.pixelset(55,44);mytoled.pixelset(56,44);mytoled.pixelset(57,44);mytoled.pixelset(58,44);mytoled.pixelset(67,44);mytoled.pixelset(68,44);mytoled.pixelset(69,44);mytoled.pixelset(70,44);mytoled.pixelset(71,44);mytoled.pixelset(73,44);mytoled.pixelset(74,44);mytoled.pixelset(75,44);mytoled.pixelset(76,44);mytoled.pixelset(77,44);mytoled.pixelset(86,44);mytoled.pixelset(87,44);mytoled.pixelset(88,44);mytoled.pixelset(94,44);mytoled.pixelset(95,44);mytoled.pixelset(96,44);mytoled.pixelset(97,44);mytoled.pixelset(105,44);mytoled.pixelset(106,44);mytoled.pixelset(107,44);mytoled.pixelset(108,44);mytoled.pixelset(112,44);mytoled.pixelset(113,44);mytoled.pixelset(114,44);mytoled.pixelset(115,44);mytoled.pixelset(122,44);mytoled.pixelset(123,44);mytoled.pixelset(124,44);mytoled.pixelset(125,44);mytoled.pixelset(13,45);mytoled.pixelset(14,45);mytoled.pixelset(15,45);mytoled.pixelset(16,45);mytoled.pixelset(20,45);mytoled.pixelset(21,45);mytoled.pixelset(22,45);mytoled.pixelset(23,45);mytoled.pixelset(31,45);mytoled.pixelset(32,45);mytoled.pixelset(33,45);mytoled.pixelset(34,45);mytoled.pixelset(37,45);mytoled.pixelset(38,45);mytoled.pixelset(39,45);mytoled.pixelset(40,45);mytoled.pixelset(48,45);mytoled.pixelset(49,45);mytoled.pixelset(50,45);mytoled.pixelset(51,45);mytoled.pixelset(55,45);mytoled.pixelset(56,45);mytoled.pixelset(57,45);mytoled.pixelset(58,45);mytoled.pixelset(67,45);mytoled.pixelset(68,45);mytoled.pixelset(69,45);mytoled.pixelset(70,45);mytoled.pixelset(74,45);mytoled.pixelset(75,45);mytoled.pixelset(76,45);mytoled.pixelset(77,45);mytoled.pixelset(78,45);mytoled.pixelset(86,45);mytoled.pixelset(87,45);mytoled.pixelset(88,45);mytoled.pixelset(94,45);mytoled.pixelset(95,45);mytoled.pixelset(96,45);mytoled.pixelset(97,45);mytoled.pixelset(105,45);mytoled.pixelset(106,45);mytoled.pixelset(107,45);mytoled.pixelset(108,45);mytoled.pixelset(112,45);mytoled.pixelset(113,45);mytoled.pixelset(114,45);mytoled.pixelset(115,45);mytoled.pixelset(122,45);mytoled.pixelset(123,45);mytoled.pixelset(124,45);mytoled.pixelset(125,45);mytoled.pixelset(3,46);mytoled.pixelset(4,46);mytoled.pixelset(5,46);mytoled.pixelset(6,46);mytoled.pixelset(13,46);mytoled.pixelset(14,46);mytoled.pixelset(15,46);mytoled.pixelset(16,46);mytoled.pixelset(20,46);mytoled.pixelset(21,46);mytoled.pixelset(22,46);mytoled.pixelset(23,46);mytoled.pixelset(31,46);mytoled.pixelset(32,46);mytoled.pixelset(33,46);mytoled.pixelset(34,46);mytoled.pixelset(37,46);mytoled.pixelset(38,46);mytoled.pixelset(39,46);mytoled.pixelset(40,46);mytoled.pixelset(48,46);mytoled.pixelset(49,46);mytoled.pixelset(50,46);mytoled.pixelset(51,46);mytoled.pixelset(55,46);mytoled.pixelset(56,46);mytoled.pixelset(57,46);mytoled.pixelset(58,46);mytoled.pixelset(67,46);mytoled.pixelset(68,46);mytoled.pixelset(69,46);mytoled.pixelset(70,46);mytoled.pixelset(75,46);mytoled.pixelset(76,46);mytoled.pixelset(77,46);mytoled.pixelset(78,46);mytoled.pixelset(86,46);mytoled.pixelset(87,46);mytoled.pixelset(88,46);mytoled.pixelset(94,46);mytoled.pixelset(95,46);mytoled.pixelset(96,46);mytoled.pixelset(97,46);mytoled.pixelset(98,46);mytoled.pixelset(104,46);mytoled.pixelset(105,46);mytoled.pixelset(106,46);mytoled.pixelset(107,46);mytoled.pixelset(108,46);mytoled.pixelset(112,46);mytoled.pixelset(113,46);mytoled.pixelset(114,46);mytoled.pixelset(115,46);mytoled.pixelset(122,46);mytoled.pixelset(123,46);mytoled.pixelset(124,46);mytoled.pixelset(125,46);mytoled.pixelset(3,47);mytoled.pixelset(4,47);mytoled.pixelset(5,47);mytoled.pixelset(6,47);mytoled.pixelset(13,47);mytoled.pixelset(14,47);mytoled.pixelset(15,47);mytoled.pixelset(16,47);mytoled.pixelset(20,47);mytoled.pixelset(21,47);mytoled.pixelset(22,47);mytoled.pixelset(23,47);mytoled.pixelset(24,47);mytoled.pixelset(30,47);mytoled.pixelset(31,47);mytoled.pixelset(32,47);mytoled.pixelset(33,47);mytoled.pixelset(34,47);mytoled.pixelset(37,47);mytoled.pixelset(38,47);mytoled.pixelset(39,47);mytoled.pixelset(40,47);mytoled.pixelset(47,47);mytoled.pixelset(48,47);mytoled.pixelset(49,47);mytoled.pixelset(50,47);mytoled.pixelset(51,47);mytoled.pixelset(55,47);mytoled.pixelset(56,47);mytoled.pixelset(57,47);mytoled.pixelset(58,47);mytoled.pixelset(67,47);mytoled.pixelset(68,47);mytoled.pixelset(69,47);mytoled.pixelset(70,47);mytoled.pixelset(75,47);mytoled.pixelset(76,47);mytoled.pixelset(77,47);mytoled.pixelset(78,47);mytoled.pixelset(79,47);mytoled.pixelset(86,47);mytoled.pixelset(87,47);mytoled.pixelset(88,47);mytoled.pixelset(95,47);mytoled.pixelset(96,47);mytoled.pixelset(97,47);mytoled.pixelset(98,47);mytoled.pixelset(104,47);mytoled.pixelset(105,47);mytoled.pixelset(106,47);mytoled.pixelset(107,47);mytoled.pixelset(108,47);mytoled.pixelset(112,47);mytoled.pixelset(113,47);mytoled.pixelset(114,47);mytoled.pixelset(115,47);mytoled.pixelset(122,47);mytoled.pixelset(123,47);mytoled.pixelset(124,47);mytoled.pixelset(125,47);mytoled.pixelset(4,48);mytoled.pixelset(5,48);mytoled.pixelset(6,48);mytoled.pixelset(7,48);mytoled.pixelset(12,48);mytoled.pixelset(13,48);mytoled.pixelset(14,48);mytoled.pixelset(15,48);mytoled.pixelset(16,48);mytoled.pixelset(20,48);mytoled.pixelset(21,48);mytoled.pixelset(22,48);mytoled.pixelset(23,48);mytoled.pixelset(24,48);mytoled.pixelset(25,48);mytoled.pixelset(26,48);mytoled.pixelset(27,48);mytoled.pixelset(28,48);mytoled.pixelset(29,48);mytoled.pixelset(30,48);mytoled.pixelset(31,48);mytoled.pixelset(32,48);mytoled.pixelset(33,48);mytoled.pixelset(38,48);mytoled.pixelset(39,48);mytoled.pixelset(40,48);mytoled.pixelset(41,48);mytoled.pixelset(46,48);mytoled.pixelset(47,48);mytoled.pixelset(48,48);mytoled.pixelset(49,48);mytoled.pixelset(50,48);mytoled.pixelset(51,48);mytoled.pixelset(55,48);mytoled.pixelset(56,48);mytoled.pixelset(57,48);mytoled.pixelset(58,48);mytoled.pixelset(67,48);mytoled.pixelset(68,48);mytoled.pixelset(69,48);mytoled.pixelset(70,48);mytoled.pixelset(76,48);mytoled.pixelset(77,48);mytoled.pixelset(78,48);mytoled.pixelset(79,48);mytoled.pixelset(80,48);mytoled.pixelset(86,48);mytoled.pixelset(87,48);mytoled.pixelset(88,48);mytoled.pixelset(95,48);mytoled.pixelset(96,48);mytoled.pixelset(97,48);mytoled.pixelset(98,48);mytoled.pixelset(99,48);mytoled.pixelset(100,48);mytoled.pixelset(101,48);mytoled.pixelset(102,48);mytoled.pixelset(103,48);mytoled.pixelset(104,48);mytoled.pixelset(105,48);mytoled.pixelset(106,48);mytoled.pixelset(107,48);mytoled.pixelset(108,48);mytoled.pixelset(112,48);mytoled.pixelset(113,48);mytoled.pixelset(114,48);mytoled.pixelset(115,48);mytoled.pixelset(122,48);mytoled.pixelset(123,48);mytoled.pixelset(124,48);mytoled.pixelset(125,48);mytoled.pixelset(4,49);mytoled.pixelset(5,49);mytoled.pixelset(6,49);mytoled.pixelset(7,49);mytoled.pixelset(8,49);mytoled.pixelset(9,49);mytoled.pixelset(10,49);mytoled.pixelset(11,49);mytoled.pixelset(12,49);mytoled.pixelset(13,49);mytoled.pixelset(14,49);mytoled.pixelset(15,49);mytoled.pixelset(20,49);mytoled.pixelset(21,49);mytoled.pixelset(22,49);mytoled.pixelset(23,49);mytoled.pixelset(24,49);mytoled.pixelset(25,49);mytoled.pixelset(26,49);mytoled.pixelset(27,49);mytoled.pixelset(28,49);mytoled.pixelset(29,49);mytoled.pixelset(30,49);mytoled.pixelset(31,49);mytoled.pixelset(32,49);mytoled.pixelset(38,49);mytoled.pixelset(39,49);mytoled.pixelset(40,49);mytoled.pixelset(41,49);mytoled.pixelset(42,49);mytoled.pixelset(43,49);mytoled.pixelset(44,49);mytoled.pixelset(45,49);mytoled.pixelset(46,49);mytoled.pixelset(47,49);mytoled.pixelset(48,49);mytoled.pixelset(49,49);mytoled.pixelset(50,49);mytoled.pixelset(51,49);mytoled.pixelset(55,49);mytoled.pixelset(56,49);mytoled.pixelset(57,49);mytoled.pixelset(58,49);mytoled.pixelset(67,49);mytoled.pixelset(68,49);mytoled.pixelset(69,49);mytoled.pixelset(70,49);mytoled.pixelset(77,49);mytoled.pixelset(78,49);mytoled.pixelset(79,49);mytoled.pixelset(80,49);mytoled.pixelset(86,49);mytoled.pixelset(87,49);mytoled.pixelset(88,49);mytoled.pixelset(95,49);mytoled.pixelset(96,49);mytoled.pixelset(97,49);mytoled.pixelset(98,49);mytoled.pixelset(99,49);mytoled.pixelset(100,49);mytoled.pixelset(101,49);mytoled.pixelset(102,49);mytoled.pixelset(103,49);mytoled.pixelset(105,49);mytoled.pixelset(106,49);mytoled.pixelset(107,49);mytoled.pixelset(108,49);mytoled.pixelset(112,49);mytoled.pixelset(113,49);mytoled.pixelset(114,49);mytoled.pixelset(115,49);mytoled.pixelset(122,49);mytoled.pixelset(123,49);mytoled.pixelset(124,49);mytoled.pixelset(125,49);mytoled.pixelset(6,50);mytoled.pixelset(7,50);mytoled.pixelset(8,50);mytoled.pixelset(9,50);mytoled.pixelset(10,50);mytoled.pixelset(11,50);mytoled.pixelset(12,50);mytoled.pixelset(13,50);mytoled.pixelset(20,50);mytoled.pixelset(21,50);mytoled.pixelset(22,50);mytoled.pixelset(23,50);mytoled.pixelset(26,50);mytoled.pixelset(27,50);mytoled.pixelset(28,50);mytoled.pixelset(29,50);mytoled.pixelset(30,50);mytoled.pixelset(31,50);mytoled.pixelset(39,50);mytoled.pixelset(40,50);mytoled.pixelset(41,50);mytoled.pixelset(42,50);mytoled.pixelset(43,50);mytoled.pixelset(44,50);mytoled.pixelset(45,50);mytoled.pixelset(48,50);mytoled.pixelset(49,50);mytoled.pixelset(50,50);mytoled.pixelset(51,50);mytoled.pixelset(55,50);mytoled.pixelset(56,50);mytoled.pixelset(57,50);mytoled.pixelset(58,50);mytoled.pixelset(67,50);mytoled.pixelset(68,50);mytoled.pixelset(69,50);mytoled.pixelset(70,50);mytoled.pixelset(77,50);mytoled.pixelset(78,50);mytoled.pixelset(79,50);mytoled.pixelset(80,50);mytoled.pixelset(81,50);mytoled.pixelset(86,50);mytoled.pixelset(87,50);mytoled.pixelset(88,50);mytoled.pixelset(96,50);mytoled.pixelset(97,50);mytoled.pixelset(98,50);mytoled.pixelset(99,50);mytoled.pixelset(100,50);mytoled.pixelset(101,50);mytoled.pixelset(102,50);mytoled.pixelset(105,50);mytoled.pixelset(106,50);mytoled.pixelset(107,50);mytoled.pixelset(108,50);mytoled.pixelset(112,50);mytoled.pixelset(113,50);mytoled.pixelset(114,50);mytoled.pixelset(115,50);mytoled.pixelset(122,50);mytoled.pixelset(123,50);mytoled.pixelset(124,50);mytoled.pixelset(125,50);mytoled.pixelset(20,51);mytoled.pixelset(21,51);mytoled.pixelset(22,51);mytoled.pixelset(23,51);mytoled.pixelset(20,52);mytoled.pixelset(21,52);mytoled.pixelset(22,52);mytoled.pixelset(23,52);mytoled.pixelset(20,53);mytoled.pixelset(21,53);mytoled.pixelset(22,53);mytoled.pixelset(23,53);mytoled.pixelset(20,54);mytoled.pixelset(21,54);mytoled.pixelset(22,54);mytoled.pixelset(23,54);mytoled.pixelset(20,55);mytoled.pixelset(21,55);mytoled.pixelset(22,55);mytoled.pixelset(23,55);mytoled.pixelset(20,56);mytoled.pixelset(21,56);mytoled.pixelset(22,56);mytoled.pixelset(23,56);mytoled.pixelset(21,57);mytoled.pixelset(22,57);mytoled.pixelset(23,57);mytoled.pixelset(22,58);mytoled.pixelset(23,58);mytoled.pixelset(23,59);对于(uint8_t indi=0;Idii<254;indi++)mytoled.setContrastControl(indi);延迟(5);延迟(5000);对于(uint8_t indi=255;1;indi——)mytoled.setContrastControl(indi);延迟(5);}mytoled.setContrastControl(0);mytoled.clearDisplay();mytoled.setContrastControl(128);endif
           

一旦你成功地将代码上传到你的板上,您应该看到下面的GIF:

示例1 GIF

如果你看一下展示标志函数,您将看到Sparkfun徽标是逐像素计算金沙线上娱乐场和绘制的。这是使用上面的image-to-pixel python脚本计算的。由于某些Arduino板内存限制,图像以这种方式绘制。也许这不是最有效的方法,但它起了作用。

您还将注意到本例中的注释是稀疏的-本例旨在让您启动并运行,并向您展示OLED的工作原理。下一个例子是,我们将更深入地演示如何使用绘图功能创建自己的应用程序。

示例2:绘图基础

这个例子展示了绘制形状的一些基本功能,包括线,矩形,圆圈,多边形。一旦上传,您应该注意到透明OLED上显示了不同的形状。要么选择文件>实例>金沙线上娱乐场Sparkfun超显示透明图形OLED库>示例2绘图基础或者将下面的代码复制并粘贴到新的Arduino窗口中。

语言:C/*带您参观透明图形OLED的基本功能,作者:Owen Lyke Sparkfun Electronics日期:2月27日,金沙线上娱乐场2019年执照:麻省理工学院。有关更多信息,请参阅许可证文件,但基本上可以使用此代码执行任何操作。想支持开源硬件吗?金沙官方娱乐场从Sparkfun买一块木板!金沙线上娱乐场https://www.金沙线上娱乐场sparkfun.com/products/15173图形库就像一个三层蛋糕。它们来自自上而下的https://github.com/sparkfun/sparkfun_hy金沙线上娱乐场perdisplay https://github.com/sparkfun/hyperdisplay_ssd1309_arduinolibrary https://github.com/sparkfun/hyperdisplay_ug2856klbag01_arduinolibrary硬件兼容性-此板上的IO插脚设计用于3.3V,因此如果您使用的是5V微控制器pl轻松使用水平移动器。注:Sparkfun开发板上的Qwiic连接器已经达金沙线上娱乐场到3.3V-此显示器依赖于微控制器中图形数据的副本,总共1024字节。这是UNO上可用的RAM的一半,因此很容易遇到与内存不足有关的恶意错误。我们建议使用内存更大的micro,比如samd21,ESP32,TENSIY等。硬件连接:选项1(I2c):如果您有QWIIC兼容板,并且计划使用I2c选项2(SPI),则使用QWIIC跳线进行连接:将SCLK和MOSI连接到您选择的SPI端口(UNO-like板上的SPI为13和11),同时将D/C和CS连接到您选择的两个未使用的GPIO引脚(并设置正确的引脚定义为低)不要忘记电源-连接3.3V和GND*/包括“hyperdisplay_g2856klbag01.h”//您的库可以安装在这里:http://librarymanager/all sparkfun_transparent_graphical_oled//层蛋糕的其余部分:http://librarymanager/all sparkfun_hyperdisplay_ssd1309//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////金沙线上娱乐场///////////////////////////////////////////////////////////////////////////////////////////////////////2/操作可选define cs_pin 4//仅当使用_spi==1 define dc_pin 5//时使用,仅当使用_spi==1 define use _spi 0//选择接口时使用。0=I2C,1=SPI//最终用户设置//对象声明。如果使用SPI ug2856klbag01,则每个接口选项都存在一个类;//声明一个基于SPI的透明OLED对象,名为mytoled else ug2856klbag01_i2c mytoled;//声明一个基于I2c的透明OLED对象,名为mytoled endif/*使用_spi*/void setup()serial.begin(9600);serial.println(“example2_drawingbasics:transparent graphical oled”);if use_spi_port.begin();mytoled.begin(cs_pin,DCPIN,斯皮尔波特);//BEGIN FOR SPI要求您提供CS和DC管脚号ELSE WIRE U PORT.BEGIN();mytoled.begin(接线端口,错误的,ssd1309_-ard-u未使用的_-pin);//begin for i2c具有每个参数线的默认值。setclock(400000);endif/*usse_spi*/**drawing with the transparent graphical OLED**toled display is a 1 bit per pixel display,这意味着每个像素都可以打开或关闭。还可以*提高/降低整个显示器的对比度,但不能单独使用任何像素。**这种简单性使Toled Hyperdisplay驱动程序不必担心颜色,相反,每个超显示函数都有两种变体——一种是“设置”像素,另一种是“清除”像素。在下面的代码块中,我们将尝试*这些函数中的一些。注:所有“set”函数都有一个“clear”对应项,它关闭像素,但我们*将只在注释中显示这些内容,以避免冗余*/uint8_t x0=0;uint8_t y0=0;uint8_t x1=0;uint8_t y1=0;uint8_t r=0;X0=5;Y0=5;mytoled.pixelset(X0,Y0);//提供要设置或清除的单个像素的x和y位置//mytoled.pixel clear(x0,Y0);//x0=10;Y0=10;X1=65;Y1=35;mytoled.矩形集(X0,Y0X1,Y1);//从(x0,y0)到(x1),y1)mytoled.矩形集(x0+2,Y0+ 2,X1-2,Y1-2,真的);//提供“filled”参数为true以填充矩形//MyToled.RectangleClear(X0,Y0X1,Y1);//mytoled.矩形清除(x0+2,Y0+ 2,X1-2,Y1-2,真的);X0=70;Y0=5;X1=85;Y1=50;mytoled.lineset(X0,Y0X1,Y1);//从(x0,y0)到(x1),y1)mytoled.lineset(x0+5,Y0X1+ 5,Y13);//绘制一条宽度为3//mytoled.lineset(x0,Y0X1,Y1);//mytoled.lineset(x0+5,Y0X1+ 5,Y13);X0=108;Y1=24;r=14;mytoled.circleset(X0,Y1R);//以(X0,Y0)半径为r mytoled.Circleset(X0,Y1R 4,真的);//填写//MyToled.CircleSet(X0,Y1R);//mytoled.circleset(x0,Y1R 4,真的);hd_范围_t x[]=5,42,52 };hd范围y[]=48,40,60 };uint8_t numsides=sizeof(x)/sizeof(hd_extent_t);mytoled.多边形集(x,Y纽曼斯);//做一个在x上有numSides的多边形,Y坐标对//mytoled.polygonclear(x,Ynumsides);void loop()mytoled.pixelset(126,2);延迟(1000);mytoled.pixelclear(126,2);延迟(1000);

示例二显示

虽然例2详细介绍了如何使用绘图功能,这在解释一件事上是不够的;尤其是在创建和开始肌肉发达的对象。创建对象时,可以选择γI2CγSPI类名称的后缀(ug2856klbag01)。这当然改变了预期的通信协议。

如果你使用QWIIC,选择我C.接口决策还影响您使用开始()通过更改期望的参数来执行函数。为了我C可以指定要使用的Arduino“Wire”对象,哪一个C要使用的地址,和一个用于选择i的pinC地址。

为了我C所有参数都有默认值,因此只需使用mytoled.begin();对于SPI,前两个参数是必需的,但第三个(允许您选择要使用的SPI端口)可以省略(例如。mytoled.begin(cs_pin,DCPIN);

示例3:高级功能

这个例子有一些严肃的Mario Goalz。上传时,你会看到马里奥上下跳跃,最后降落在一根管子上。要么选择文件>实例>金沙线上娱乐场Sparkfun超显示透明图形OLED库>示例3:U高级功能或者将下面的代码复制并粘贴到新的Arduino窗口中。

语言:C/*带您参观透明图形OLED的基本功能,作者:Owen Lyke Sparkfun Electronics日期:2月28日,金沙线上娱乐场2019年执照:麻省理工学院。有关更多信息,请参阅许可证文件,但基本上可以使用此代码执行任何操作。想支持开源硬件吗?金沙官方娱乐场从Sparkfun买一块木板!金沙线上娱乐场https://www.金沙线上娱乐场sparkfun.com/products/15173图形库就像一个三层蛋糕。它们来自自上而下的https://github.com/sparkfun/sparkfun_hy金沙线上娱乐场perdisplay https://github.com/sparkfun/hyperdisplay_ssd1309_arduinolibrary https://github.com/sparkfun/hyperdisplay_ug2856klbag01_arduinolibrary硬件兼容性-此板上的IO插脚设计用于3.3V,因此如果您使用的是5V微控制器pl轻松使用水平移动器。注:Sparkfun开发板上的Qwiic连接器已经达金沙线上娱乐场到3.3V-此显示器依赖于微控制器中图形数据的副本,总共1024字节。这是UNO上可用的RAM的一半,因此很容易遇到与内存不足有关的恶意错误。我们建议使用内存更大的micro,比如samd21,ESP32,TENSIY等。硬件连接:选项1(I2c):如果您有QWIIC兼容板,并且计划使用I2c选项2(SPI),则使用QWIIC跳线进行连接:将SCLK和MOSI连接到您选择的SPI端口(UNO-like板上的SPI为13和11),同时将D/C和CS连接到您选择的两个未使用的GPIO引脚(并设置正确的引脚定义为低)不要忘记电源-连接3.3V和GND*/包括“hyperdisplay_g2856klbag01.h”//您的库可以安装在这里:http://librarymanager/all sparkfun_transparent_graphical_oled//层蛋糕的其余部分:http://librarymanager/all sparkfun_hyperdisplay_ssd1309//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////金沙线上娱乐场///////////////////////////////////////////////////////////////////////////////////////////////////////2/操作可选define cs_pin 4//仅当使用_spi==1 define dc_pin 5//时使用,仅当使用_spi==1 define use _spi 0//选择接口时使用。0=I2C,1=SPI//最终用户设置//对象声明。如果使用SPI ug2856klbag01,则每个接口选项都存在一个类;//声明一个基于SPI的透明OLED对象,名为mytoled else ug2856klbag01_i2c mytoled;//声明一个基于I2c的透明OLED对象,名为mytoled endif/*使用_spi*/void setup()serial.begin(9600);serial.println(“example3_-advancedfeatures:transparent graphical oled”);如果使用_-spi-spi-port.begin();mytoled.begin(cs_pin,DCPIN,斯皮尔波特);//BEGIN FOR SPI要求您提供CS和DC管脚号ELSE WIRE U PORT.BEGIN();mytoled.begin(接线端口,错误的,ssd1309_-ard-u未使用的_-pin);//begin for i2c具有每个参数wire的默认值。setclock(400000);endif/*usse_spi*/wind_info_t defaultwindow,我的窗口;//创建一些窗口对象//将窗口初始化为默认设置//(这是一个非常重要的步骤,除非您特别//小心手动初始化每个参数)mytoled.setwindowdefaults(&defaultwindow);mytoled.setWindowDefaults(&myWindow);//我们可以设置窗口mywindow.xmin=25的矩形活动区域;mywindow.ymin=05;mywindow.xmax=73;mywindow.ymax=48;//所有绘图函数都使用窗口相对坐标//这样可以很容易地重新定位整个合成//首先让我们在默认窗口(相当于整个屏幕)上绘制一条线mytoled.lineset(0,0,15,43);//现在,让我们更改活动窗口并绘制相同的线延迟(1000);mytoled.pccurrentWindow=我的窗口&myWindow;mytoled.lineset(0,0,15,43);延迟(2000);//为了更好地说明窗口的位置,我们来填充它。mytoled.windowset();//在当前窗口上调用不带参数的windowset。//mytoled.windowclear();延迟(2000);/记住,绘图功能与当前窗口相关,//所以你不必做额外的数学!mytoled.环形耳环(25,20,10);//加些比萨!延迟(2000);//您也可以将一个窗口传递给windowset/clear来填充它,而不必更改当前窗口mytoled.window clear(&defaultwindow);//默认初始化将清除整个屏幕void loop()if!定义(uu avr_atmega328p_uuu)&!defined(uuavr_atmega168_uuuuu)//现在举一个例子来说明您可能对一个窗口做什么……风信息马里奥斯温多,管道窗;mytoled.setwindowdefaults(&marioswindow);mytoled.setWindowDefaults(&pipeWindow);//使窗口足够大,以便Mario Marioswindow.xmax=21;marioswindow.ymax=28;pipewindow.xmax=24;pipewindow.ymax=24;//将窗口移动到起始位置movewindow(0,34,马里奥斯窗;移动窗口(103)63-25,管道窗口;//绘制管道mytoled.pccurrentWindow=&pipeWindow;SuffPIE();//在开始位置mytoled.pccurrentWindow=绘制Mario;//将Mario移动到他的家mytoled.windowclear();移动窗口(15)- 15,马里奥斯窗;;mytoled.windowclear();移动窗口(15)15,马里奥斯窗;;mytoled.windowclear();移动窗口(13)- 15,马里奥斯窗;;mytoled.windowclear();移动窗口(13)15,马里奥斯窗;;mytoled.windowclear();移动窗口(13)- 15,马里奥斯窗;;mytoled.windowclear();移动窗口(13)15,马里奥斯窗;;mytoled.windowclear();移动窗口(5)- 23,马里奥斯窗;;mytoled.windowclear();移动窗口(17)0,马里奥斯窗;;延迟(5000);mytoled.windowclear();endif void movewindow(int8_t x,国际标准化组织,wind_info_t*pwind)pwind->xmin+=x;pwind->ymin+=y;pwind->xmax+=x;pwind->ymax+=y;如果!定义(uu avr_atmega328p_uuu)&!定义(uuAvr_Atmega168_uuuuuuuvoid Showmario(void)mytoled.pixelset(6,2);mytoled.pixelset(7,2);mytoled.pixelset(8,2);mytoled.pixelset(9,2);mytoled.pixelset(10,2);mytoled.pixelset(11,2);mytoled.pixelset(12,2);mytoled.pixelset(13,2);mytoled.pixelset(5,3);mytoled.pixelset(6,3);mytoled.pixelset(7,3);mytoled.pixelset(8,3);mytoled.pixelset(9,3);mytoled.pixelset(10,3);mytoled.pixelset(11,3);mytoled.pixelset(12,3);mytoled.pixelset(13,3);mytoled.pixelset(14,3);mytoled.pixelset(15,3);mytoled.pixelset(16,3);mytoled.pixelset(17,3);mytoled.pixelset(18,3);mytoled.pixelset(4,4);mytoled.pixelset(5,4);mytoled.pixelset(6,4);mytoled.pixelset(7,4);mytoled.pixelset(8,4);mytoled.pixelset(9,4);mytoled.pixelset(10,4);mytoled.pixelset(11,4);mytoled.pixelset(12,4);mytoled.pixelset(13,4);mytoled.pixelset(14,4);mytoled.pixelset(15,4);mytoled.pixelset(16,4);mytoled.pixelset(17,4);mytoled.pixelset(18,4);mytoled.pixelset(4,5);mytoled.pixelset(5,5);mytoled.pixelset(6,5);mytoled.pixelset(7,5);mytoled.pixelset(8,5);mytoled.pixelset(9,5);mytoled.pixelset(10,5);mytoled.pixelset(11,5);mytoled.pixelset(12,5);mytoled.pixelset(13,5);mytoled.pixelset(14,5);mytoled.pixelset(15,5);mytoled.pixelset(4,6);mytoled.pixelset(5,6);mytoled.pixelset(6,6);mytoled.pixelset(7,6);mytoled.pixelset(8,6);mytoled.pixelset(9,6);mytoled.pixelset(10,6);mytoled.pixelset(11,6);mytoled.pixelset(12,6);mytoled.pixelset(13,6);mytoled.pixelset(14,6);mytoled.pixelset(15,6);mytoled.pixelset(3,7);mytoled.pixelset(4,7);mytoled.pixelset(5,7);mytoled.pixelset(6,7);mytoled.pixelset(7,7);mytoled.pixelset(8,7);mytoled.pixelset(9,7);mytoled.pixelset(10,7);mytoled.pixelset(11,7);mytoled.pixelset(12,7);mytoled.pixelset(13,7);mytoled.pixelset(14,7);mytoled.pixelset(15,7);mytoled.pixelset(16,7);mytoled.pixelset(17,7);mytoled.pixelset(18,7);mytoled.pixelset(3,8);mytoled.pixelset(4,8);mytoled.pixelset(5,8);mytoled.pixelset(6,8);mytoled.pixelset(7,8);mytoled.pixelset(8,8);mytoled.pixelset(9,8);mytoled.pixelset(10,8);mytoled.pixelset(11,8);mytoled.pixelset(12,8);mytoled.pixelset(13,8);mytoled.pixelset(14,8);mytoled.pixelset(15,8);mytoled.pixelset(16,8);mytoled.pixelset(17,8);mytoled.pixelset(18,8);mytoled.pixelset(3,9);mytoled.pixelset(4,9);mytoled.pixelset(5,9);mytoled.pixelset(6,9);mytoled.pixelset(7,9);mytoled.pixelset(8,9);mytoled.pixelset(9,9);mytoled.pixelset(10,9);mytoled.pixelset(11,9);mytoled.pixelset(12,9);mytoled.pixelset(13,9);mytoled.pixelset(14,9);mytoled.pixelset(15,9);mytoled.pixelset(16,9);mytoled.pixelset(17,9);mytoled.pixelset(18,9);mytoled.pixelset(19,9);mytoled.pixelset(3,10);mytoled.pixelset(4,10);mytoled.pixelset(5,10);mytoled.pixelset(6,10);mytoled.pixelset(7,10);mytoled.pixelset(8,10);mytoled.pixelset(9,10);mytoled.pixelset(10,10);mytoled.pixelset(11,10);mytoled.pixelset(12,10);mytoled.pixelset(13,10);mytoled.pixelset(14,10);mytoled.pixelset(15,10);mytoled.pixelset(16,10);mytoled.pixelset(17,10);mytoled.pixelset(18,10);mytoled.pixelset(3,11);mytoled.pixelset(4,11);mytoled.pixelset(5,11);mytoled.pixelset(6,11);mytoled.pixelset(7,11);mytoled.pixelset(8,11);mytoled.pixelset(9,11);mytoled.pixelset(10,11);mytoled.pixelset(11,11);mytoled.pixelset(12,11);mytoled.pixelset(13,11);mytoled.pixelset(14,11);mytoled.pixelset(15,11);mytoled.pixelset(16,11);mytoled.pixelset(17,11);mytoled.pixelset(18,11);mytoled.pixelset(6,12);mytoled.pixelset(7,12);mytoled.pixelset(8,12);mytoled.pixelset(9,12);mytoled.pixelset(10,12);mytoled.pixelset(11,12);mytoled.pixelset(12,12);mytoled.pixelset(13,12);mytoled.pixelset(14,12);mytoled.pixelset(15,12);mytoled.pixelset(16,12);mytoled.pixelset(5,13);mytoled.pixelset(6,13);mytoled.pixelset(7,13);mytoled.pixelset(8,13);mytoled.pixelset(9,13);mytoled.pixelset(10,13);mytoled.pixelset(11,13);mytoled.pixelset(12,13);mytoled.pixelset(13,13);mytoled.pixelset(4,14);mytoled.pixelset(5,14);mytoled.pixelset(6,14);mytoled.pixelset(7,14);mytoled.pixelset(8,14);mytoled.pixelset(9,14);mytoled.pixelset(10,14);mytoled.pixelset(11,14);mytoled.pixelset(12,14);mytoled.pixelset(13,14);mytoled.pixelset(3,15);mytoled.pixelset(4,15);mytoled.pixelset(5,15);mytoled.pixelset(6,15);mytoled.pixelset(7,15);mytoled.pixelset(8,15);mytoled.pixelset(9,15);mytoled.pixelset(10,15);mytoled.pixelset(11,15);mytoled.pixelset(12,15);mytoled.pixelset(13,15);mytoled.pixelset(14,15);mytoled.pixelset(15,15);mytoled.pixelset(16,15);mytoled.pixelset(17,15);mytoled.pixelset(18,15);mytoled.pixelset(2,16);mytoled.pixelset(3,16);mytoled.pixelset(4,16);mytoled.pixelset(5,16);mytoled.pixelset(6,16);mytoled.pixelset(7,16);mytoled.pixelset(8,16);mytoled.pixelset(9,16);mytoled.pixelset(10,16);mytoled.pixelset(11,16);mytoled.pixelset(12,16);mytoled.pixelset(13,16);mytoled.pixelset(14,16);mytoled.pixelset(15,16);mytoled.pixelset(16,16);mytoled.pixelset(17,16);mytoled.pixelset(18,16);mytoled.pixelset(1,17);mytoled.pixelset(2,17);mytoled.pixelset(3,17);mytoled.pixelset(4,17);mytoled.pixelset(5,17);mytoled.pixelset(6,17);mytoled.pixelset(7,17);mytoled.pixelset(8,17);mytoled.pixelset(9,17);mytoled.pixelset(10,17);mytoled.pixelset(11,17);mytoled.pixelset(12,17);mytoled.pixelset(13,17);mytoled.pixelset(14,17);mytoled.pixelset(15,17);mytoled.pixelset(16,17);mytoled.pixelset(17,17);mytoled.pixelset(18,17);mytoled.pixelset(19,17);mytoled.pixelset(1,18);mytoled.pixelset(2,18);mytoled.pixelset(3,18);mytoled.pixelset(4,18);mytoled.pixelset(5,18);mytoled.pixelset(6,18);mytoled.pixelset(7,18);mytoled.pixelset(8,18);mytoled.pixelset(9,18);mytoled.pixelset(10,18);mytoled.pixelset(11,18);mytoled.pixelset(12,18);mytoled.pixelset(13,18);mytoled.pixelset(14,18);mytoled.pixelset(15,18);mytoled.pixelset(16,18);mytoled.pixelset(17,18);mytoled.pixelset(18,18);mytoled.pixelset(19,18);mytoled.pixelset(1,19);mytoled.pixelset(2,19);mytoled.pixelset(3,19);mytoled.pixelset(4,19);mytoled.pixelset(5,19);mytoled.pixelset(6,19);mytoled.pixelset(7,19);mytoled.pixelset(8,19);mytoled.pixelset(9,19);mytoled.pixelset(10,19);mytoled.pixelset(11,19);mytoled.pixelset(12,19);mytoled.pixelset(13,19);mytoled.pixelset(14,19);mytoled.pixelset(15,19);mytoled.pixelset(16,19);mytoled.pixelset(17,19);mytoled.pixelset(18,19);mytoled.pixelset(19,19);mytoled.pixelset(1,20);mytoled.pixelset(2,20);mytoled.pixelset(3,20);mytoled.pixelset(4,20);mytoled.pixelset(5,20);mytoled.pixelset(6,20);mytoled.pixelset(7,20);mytoled.pixelset(8,20);mytoled.pixelset(9,20);mytoled.pixelset(10,20);mytoled.pixelset(11,20);mytoled.pixelset(12,20);mytoled.pixelset(13,20);mytoled.pixelset(14,20);mytoled.pixelset(15,20);mytoled.pixelset(16,20);mytoled.pixelset(17,20);mytoled.pixelset(18,20);mytoled.pixelset(19,20);mytoled.pixelset(1,21);mytoled.pixelset(2,21);mytoled.pixelset(3,21);mytoled.pixelset(4,21);mytoled.pixelset(5,21);mytoled.pixelset(6,21);mytoled.pixelset(7,21);mytoled.pixelset(8,21);mytoled.pixelset(9,21);mytoled.pixelset(10,21);mytoled.pixelset(11,21);mytoled.pixelset(12,21);mytoled.pixelset(13,21);mytoled.pixelset(14,21);mytoled.pixelset(15,21);mytoled.pixelset(16,21);mytoled.pixelset(17,21);mytoled.pixelset(18,21);mytoled.pixelset(19,21);mytoled.pixelset(1,22);mytoled.pixelset(2,22);mytoled.pixelset(3,22);mytoled.pixelset(4,22);mytoled.pixelset(5,22);mytoled.pixelset(6,22);mytoled.pixelset(7,22);mytoled.pixelset(8,22);mytoled.pixelset(9,22);mytoled.pixelset(10,22);mytoled.pixelset(11,22);mytoled.pixelset(12,22);mytoled.pixelset(13,22);mytoled.pixelset(14,22);mytoled.pixelset(15,22);mytoled.pixelset(16,22);mytoled.pixelset(17,22);mytoled.pixelset(18,22);mytoled.pixelset(19,22);mytoled.pixelset(4,23);mytoled.pixelset(5,23);mytoled.pixelset(6,23);mytoled.pixelset(7,23);mytoled.pixelset(8,23);mytoled.pixelset(12,23);mytoled.pixelset(13,23);mytoled.pixelset(14,23);mytoled.pixelset(15,23);mytoled.pixelset(16,23);mytoled.pixelset(4,24);mytoled.pixelset(5,24);mytoled.pixelset(6,24);mytoled.pixelset(7,24);mytoled.pixelset(13,24);mytoled.pixelset(14,24);mytoled.pixelset(15,24);mytoled.pixelset(16,24);mytoled.pixelset(3,25);mytoled.pixelset(4,25);mytoled.pixelset(5,25);mytoled.pixelset(6,25);mytoled.pixelset(14,25);mytoled.pixelset(15,25);mytoled.pixelset(16,25);mytoled.pixelset(17,25);mytoled.pixelset(18,25);mytoled.pixelset(2,26);mytoled.pixelset(3,26);mytoled.pixelset(4,26);mytoled.pixelset(5,26);mytoled.pixelset(6,26);mytoled.pixelset(14,26);mytoled.pixelset(15,26);mytoled.pixelset(16,26);mytoled.pixelset(17,26);mytoled.pixelset(18,26);mytoled.pixelset(19,26);mytoled.pixelset(1,27);mytoled.pixelset(2,27);mytoled.pixelset(3,27);mytoled.pixelset(4,27);mytoled.pixelset(5,27);mytoled.pixelset(6,27);mytoled.pixelset(14,27);mytoled.pixelset(15,27);mytoled.pixelset(16,27);mytoled.pixelset(17,27);mytoled.pixelset(18,27);mytoled.pixelset(19,27);mytoled.pixelset(20,27);}void showpipe(void)mytoled.pixelset(2,2);mytoled.pixelset(3,2);mytoled.pixelset(4,2);mytoled.pixelset(5,2);mytoled.pixelset(6,2);mytoled.pixelset(7,2);mytoled.pixelset(8,2);mytoled.pixelset(9,2);mytoled.pixelset(10,2);mytoled.pixelset(11,2);mytoled.pixelset(12,2);mytoled.pixelset(13,2);mytoled.pixelset(14,2);mytoled.pixelset(15,2);mytoled.pixelset(16,2);mytoled.pixelset(17,2);mytoled.pixelset(18,2);mytoled.pixelset(19,2);mytoled.pixelset(20,2);mytoled.pixelset(21,2);mytoled.pixelset(22,2);mytoled.pixelset(2,3);mytoled.pixelset(22,3);mytoled.pixelset(2,4);mytoled.pixelset(12,4);mytoled.pixelset(13,4);mytoled.pixelset(14,4);mytoled.pixelset(15,4);mytoled.pixelset(16,4);mytoled.pixelset(22,4);mytoled.pixelset(2,5);mytoled.pixelset(12,5);mytoled.pixelset(13,5);mytoled.pixelset(14,5);mytoled.pixelset(15,5);mytoled.pixelset(16,5);mytoled.pixelset(17,5);mytoled.pixelset(22,5);mytoled.pixelset(2,6);mytoled.pixelset(4,6);mytoled.pixelset(5,6);mytoled.pixelset(9,6);mytoled.pixelset(12,6);mytoled.pixelset(13,6);mytoled.pixelset(14,6);mytoled.pixelset(15,6);mytoled.pixelset(16,6);mytoled.pixelset(22,6);mytoled.pixelset(2,7);mytoled.pixelset(12,7);mytoled.pixelset(13,7);mytoled.pixelset(14,7);mytoled.pixelset(15,7);mytoled.pixelset(16,7);mytoled.pixelset(17,7);mytoled.pixelset(22,7);mytoled.pixelset(2,8);mytoled.pixelset(12,8);mytoled.pixelset(13,8);mytoled.pixelset(14,8);mytoled.pixelset(15,8);mytoled.pixelset(16,8);mytoled.pixelset(22,8);mytoled.pixelset(2,9);mytoled.pixelset(12,9);mytoled.pixelset(13,9);mytoled.pixelset(14,9);mytoled.pixelset(15,9);mytoled.pixelset(16,9);mytoled.pixelset(22,9);mytoled.pixelset(2,10);mytoled.pixelset(12,10);mytoled.pixelset(13,10);mytoled.pixelset(14,10);mytoled.pixelset(15,10);mytoled.pixelset(16,10);mytoled.pixelset(17,10);mytoled.pixelset(22,10);mytoled.pixelset(2,11);mytoled.pixelset(4,11);mytoled.pixelset(5,11);mytoled.pixelset(9,11);mytoled.pixelset(12,11);mytoled.pixelset(13,11);mytoled.pixelset(14,11);mytoled.pixelset(15,11);mytoled.pixelset(16,11);mytoled.pixelset(17,11);mytoled.pixelset(18,11);mytoled.pixelset(22,11);mytoled.pixelset(2,12);mytoled.pixelset(3,12);mytoled.pixelset(4,12);mytoled.pixelset(5,12);mytoled.pixelset(6,12);mytoled.pixelset(7,12);mytoled.pixelset(8,12);mytoled.pixelset(9,12);mytoled.pixelset(10,12);mytoled.pixelset(11,12);mytoled.pixelset(12,12);mytoled.pixelset(13,12);mytoled.pixelset(14,12);mytoled.pixelset(15,12);mytoled.pixelset(16,12);mytoled.pixelset(17,12);mytoled.pixelset(18,12);mytoled.pixelset(19,12);mytoled.pixelset(20,12);mytoled.pixelset(21,12);mytoled.pixelset(22,12);mytoled.pixelset(3,13);mytoled.pixelset(6,13);mytoled.pixelset(7,13);mytoled.pixelset(11,13);mytoled.pixelset(13,13);mytoled.pixelset(14,13);mytoled.pixelset(15,13);mytoled.pixelset(16,13);mytoled.pixelset(17,13);mytoled.pixelset(20,13);mytoled.pixelset(21,13);mytoled.pixelset(3,14);mytoled.pixelset(6,14);mytoled.pixelset(14,14);mytoled.pixelset(20,14);mytoled.pixelset(21,14);mytoled.pixelset(3,15);mytoled.pixelset(6,15);mytoled.pixelset(14,15);mytoled.pixelset(15,15);mytoled.pixelset(20,15);mytoled.pixelset(21,15);mytoled.pixelset(3,16);mytoled.pixelset(6,16);mytoled.pixelset(14,16);mytoled.pixelset(15,16);mytoled.pixelset(20,16);mytoled.pixelset(21,16);mytoled.pixelset(3,17);mytoled.pixelset(6,17);mytoled.pixelset(14,17);mytoled.pixelset(15,17);mytoled.pixelset(20,17);mytoled.pixelset(21,17);mytoled.pixelset(3,18);mytoled.pixelset(6,18);mytoled.pixelset(14,18);mytoled.pixelset(15,18);mytoled.pixelset(20,18);mytoled.pixelset(21,18);mytoled.pixelset(3,19);mytoled.pixelset(6,19);mytoled.pixelset(14,19);mytoled.pixelset(20,19);mytoled.pixelset(21,19);mytoled.pixelset(3,20);mytoled.pixelset(6,20);mytoled.pixelset(14,20);mytoled.pixelset(15,20);mytoled.pixelset(20,20);mytoled.pixelset(21,20);mytoled.pixelset(3,21);mytoled.pixelset(6,21);mytoled.pixelset(14,21);mytoled.pixelset(15,21);mytoled.pixelset(20,21);mytoled.pixelset(21,21);mytoled.pixelset(3,22);mytoled.pixelset(6,22);mytoled.pixelset(14,22);mytoled.pixelset(15,22);mytoled.pixelset(20,22);mytoled.pixelset(21,22);mytoled.pixelset(3,23);mytoled.pixelset(6,23);mytoled.pixelset(14,23);mytoled.pixelset(15,23);mytoled.pixelset(20,23);mytoled.pixelset(21,23);mytoled.pixelset(3,24);mytoled.pixelset(6,24);mytoled.pixelset(14,24);mytoled.pixelset(20,24);mytoled.pixelset(21,24);}#Elsevoid Showmario(void)serial.println(f(“抱歉,由于程序内存大小限制,UNO和其他内存不足的微控制器可能无法运行Mario代码。“)”void showpipe(void)serial.println(f(“抱歉,由于程序内存大小限制,UNO和其他内存不足的微控制器可能无法运行Mario代码。“)endif

一旦你上传了代码,你应该看到一个跳动的马里奥朝终点线走去。

马里奥I2c显示屏

本例中引用的“高级功能”是相对于预先定义的“窗口”绘制的功能。“窗口”允许您轻松地将绘图约束到特定区域或对相关对象进行分组。为了突出这一事实,我们制作了一个马里奥角色,里面有一堆硬编码的像素集(x,y)但只需移动活动窗口并重新绘制就可以移动他。在那种情况下,组成马里奥的所有单个像素都是我们想要一起移动的相关对象。

本例中未显示的一个功能是内置的超显示文本打印。原因在于,ESP32板 不支持页眉,因此无法使用默认金沙官方娱乐场字体。然而,打印功能应该在两个都支持的micr控制器上工作金沙官方娱乐场 有足够的内存来保持稳定。退房超显示教程有关此的详细信息。

资源和进一步发展

有关透明图形OLED分接的详细信息,查看以下链接:

下一个项目需要一些灵感吗?金沙线上娱乐场查看其他一些与显示相关的教程!

使用OpenSegment

如何连接和使用OpenSegment显示屏蔽。OpenSegment是串行7段显示器的大哥大。它们运行在同一个固件上,然而,OpenSegment大约是OpenSegment的两倍大。

光子OLED屏蔽连接指南

光子OLED屏蔽具备为光子项目添加一个小而清晰的OLED屏幕所需的一切。金沙线上娱乐场本连接指南将向您展示如何开始。

在爱迪生上使用LCD

如何将由ILI9341驱动程序控制的LCD连接到Intel®Edison。

灵活的灰度OLED连接指南

了解如何在新的灵活OLED屏幕上显示图像。