OLED

使用的库文件

Adafruit SSD1306 Library:

下载地址:https://github.com/adafruit/Adafruit_SSD1306

Adafruit GFX Library:

下载地址:https://github.com/adafruit/Adafruit-GFX-Library

不过下载下来的库不能直接使用,有几处需要修改

(本例OLED是SSD1306_128_64):

  • 进入Arduino库文件夹,修改 Adafruit_SSD1306.h (使用任意文本编辑器打开)

  • 找到并注释掉改行: #define SSD1306_128_32

  • 取消改行的注释: #define SSD1306_128_64

  • 在Arduino中打开实例文件: ssd1306_128x64_i2c

  • 在setup函数中将地址从0x3D更改为0x3C

需要更改地址的地方

接线

  • SCL—— A5

  • SDA —— A4

库中的一些函数

display.drawLine(0, 0, display.width()-1, display.height()-1, WHITE);

display.display();

//画线,display.width()和display.heght()分别获取显示屏的宽与高

void testscrolltext(void) {

display.setTextSize(2);

display.setTextColor(WHITE);

display.setCursor(10,0);

display.clearDisplay();

display.println("scroll");

display.display();

delay(1);

display.startscrollright(0x00, 0x0F);

delay(2000);

display.stopscroll();

delay(1000);

display.startscrollleft(0x00, 0x0F);

delay(2000);

display.stopscroll();

delay(1000);

display.startscrolldiagright(0x00, 0x07);

delay(2000);

display.startscrolldiagleft(0x00, 0x07);

delay(2000);

display.stopscroll();

}//游字幕效果,参数不知道啥意思。

display.drawRect(5, 5, display.width()-5, display.height()-5, WHITE);

display.display();

//画矩形

display.fillRoundRect(5, 5, display.width()-5, display.height()-5, display.height()/8, WHITE);

display.display();//填充圆角矩形

display.drawRoundRect(5, 5, display.width()-5, display.height()-5, display.height()/4, WHITE);

display.display();//圆角矩形(空心)

display.fillTriangle(display.width()/2, display.height()/2-5,

display.width()/2-5, display.height()/2+5,

display.width()/2+5, display.height()/2+5, WHITE);

display.display();//实心三角形

display.drawTriangle(display.width()/2, display.height()/2-5,

display.width()/2-5, display.height()/2+5,

display.width()/2+5, display.height()/2+5, WHITE);

display.display();//空心三角

display.drawCircle(display.width()/2, display.height()/2, 20, WHITE);

display.display();//空心圆