基于Arduino开发环境ESP8266 oled1306绘图(程序是修改至CSDN的Willliam_william博主)
需要使用Arduino-OLED第三方库:https://github.com/ThingPulse/esp8266-oled-ssd1306/tree/4.2.0网址进行下载然后得到esp8266-oled-ssd1306-master.zip文件然后解压到你的用户库Arduino\libraries里边
例如我的库路径是:C:\Users\Administrator\Documents\Arduino\libraries
因为程序里的SSD1306Wire.h头文件在这里边esp8266-oled-ssd1306-master.zip
也可以到我QQ群里下载项目文件 :
雨过天亮电子DIY
578065133
基于Arduino ESP8266 oled绘图(Zero创客).zip
下面是程序:
//draw.ion文件
/*
* 程序是修改至CSDN的Willliam_william博主
* 修改人:Zero创客
* ESP8266-NodeMCU通过驱动oled显示文文字和图片
* 需要使用Arduino-OLED第三方库:https://github.com/ThingPulse/esp8266-oled-ssd1306/tree/4.2.0
*/
/* 使用0.96寸的OLED屏幕需要使用包含这个头文件 */
#include "SSD1306Wire.h"
#include "image.h"
/* 设置oled屏幕的相关信息 */
const int I2C_ADDR = 0x3c; // oled屏幕的I2c地址
#define SDA_PIN 4 // SDA引脚,默认gpio4(D2)
#define SCL_PIN 5 // SCL引脚,默认gpio5(D1)
/* 新建一个oled屏幕对象,需要输入IIC地址,SDA和SCL引脚号 */
SSD1306Wire oled(I2C_ADDR, SDA_PIN, SCL_PIN);
void setup() {
/* 1. 初始化串口通讯波特率为115200*/
Serial.begin(115200);
/* 2. oled屏幕初始化 */
oled.init();
oled.flipScreenVertically(); // 设置屏幕翻转
oled.setContrast(255); // 设置屏幕亮度
//drawRect(); // 测试屏幕显示
oled.clear(); oled.display(); // 清除屏幕
/* 1. 显示欢迎字母 */
oled.setFont(ArialMT_Plain_16); // 设置字体
oled.drawString(40, 0, "Hello!"); // 将要显示的字母写入缓存
oled.drawString(10, 20, "I'm Zero Hacker"); // 将要显示的字母写入缓存
oled.display(); // 将缓存里的文字在屏幕上显示
delay(1500);
oled.clear(); oled.display(); // 清除屏幕
}
void loop() {
/* 2. 显示Zero创客Logo图片*/
oled.drawFastImage(32, 0, 64, 64, image);
oled.display();
//delay(1000);
//oled.clear(); oled.display(); // 清除屏幕
/* 3. LED状态取反 */
// digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
}
/*
void drawRect(void) {
for (int16_t i=0; i<oled.getHeight()/2; i+=2) {
oled.drawRect(i, i, oled.getWidth()-2*i, oled.getHeight()-2*i);
oled.display();
delay(50);
}
}
*/
//image.h存放绘图取模数据的头文件
/*
*用于存储图片的头文件
*
*
*/
//Zero创客Logo
const uint8_t image[] PROGMEM = {
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0xFF,0x89,0xAA,0xAA,0xAA,0x2A,0x00,0xFE,0xFF,0x57,0x55,0x55,0x55,0xD5,0x00,
0x06,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0xE6,0x10,0x00,0x00,0x00,0x00,0xD0,0x00,0xA6,0x11,0x00,0x00,0x00,0x00,0x81,0x00,
0x24,0x19,0x00,0x00,0x00,0x80,0xC2,0x00,0x26,0x0F,0x00,0x00,0x00,0x40,0x84,0x00,0x06,0x00,0x00,0x00,0x00,0x40,0xD4,0x00,
0xC6,0x0F,0x00,0x00,0x00,0x40,0x84,0x00,0x24,0x18,0x00,0x00,0x00,0x00,0xC0,0x00,0x24,0x10,0x00,0x00,0x00,0x00,0x80,0x00,
0x26,0x10,0x00,0x11,0x00,0x40,0xC4,0x00,0xC6,0x0F,0xE0,0x00,0x00,0x40,0x80,0x00,0x04,0x00,0x44,0x44,0x01,0x40,0xC4,0x00,
0x04,0x00,0x02,0x00,0x0B,0x00,0x84,0x00,0x06,0x00,0x53,0x55,0x1F,0x40,0xC4,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x85,0x7A,
0x04,0x00,0x44,0x44,0x44,0x40,0xC5,0x2A,0x06,0x60,0x00,0x00,0x00,0x40,0x81,0x7E,0x04,0x20,0x61,0x04,0x55,0x40,0xC1,0x2A,
0x04,0x10,0xF8,0x30,0x00,0x40,0x85,0x7A,0x06,0x10,0xF8,0x23,0x44,0x42,0xC5,0x00,0x04,0x00,0x8C,0x33,0x00,0x42,0x85,0x56,
0x00,0x10,0x0C,0x33,0x51,0x43,0xC5,0x7C,0x06,0x00,0x0C,0x36,0x00,0x02,0x85,0x54,0x06,0x48,0x0C,0x3E,0x44,0x46,0xC5,0x7E,
0x06,0x00,0x0C,0x1C,0x00,0x02,0x85,0x44,0x06,0x50,0x01,0x00,0x55,0x47,0xC5,0x40,0x06,0x00,0x00,0x00,0x00,0x42,0x85,0x00,
0x04,0x44,0x04,0x00,0x44,0x46,0xC5,0x48,0x04,0x00,0xC0,0x3F,0x00,0x00,0x84,0x2A,0x06,0x50,0xC3,0x3F,0x51,0x05,0xC5,0x1E,
0x06,0x08,0x82,0x00,0x00,0x00,0x85,0x1A,0x04,0x48,0x84,0x01,0x55,0x44,0xC5,0x2A,0x04,0x00,0x80,0x3F,0x22,0x40,0x85,0x48,
0x04,0x50,0x15,0x3F,0x55,0x45,0xC5,0x00,0x04,0x00,0x00,0x00,0x00,0x40,0x81,0x54,0x04,0x48,0x44,0x44,0x54,0x40,0xC5,0x7C,
0x04,0x00,0x0C,0x00,0x20,0x00,0x85,0x16,0x04,0x50,0x55,0x51,0x55,0x41,0xC1,0x7C,0x04,0x00,0x00,0x00,0x00,0x00,0x85,0x54,
0x06,0x40,0x44,0x47,0xC4,0x40,0xC5,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x84,0x00,0x46,0x00,0x55,0x55,0x1D,0x40,0xC4,0x00,
0xB6,0x02,0x00,0x00,0x06,0x00,0x80,0x00,0x22,0x0D,0x44,0x4C,0x07,0x40,0xC4,0x00,0xA2,0x0A,0x18,0x00,0x00,0x00,0x80,0x00,
0x00,0x00,0x80,0x8B,0x00,0x40,0xD4,0x00,0xD2,0x02,0x00,0x10,0x00,0x00,0x84,0x00,0xB2,0x05,0x00,0x00,0x00,0x40,0xC4,0x00,
0xD2,0x0A,0x00,0x00,0x00,0x80,0x82,0x00,0x26,0x07,0x00,0x00,0x00,0x00,0xC1,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x80,0x00,
0x0C,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0xFC,0x0F,0xA3,0xAA,0xAA,0xAA,0xAA,0x00,0xFE,0x5F,0x55,0x55,0x55,0x75,0x77,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};
oled控制引脚:
SDA_PIN 4 // SDA引脚,默认gpio4(D2)
SCL_PIN 5 // SCL引脚,默认gpio5(D1)
程序烧录后屏幕会显示:
Hello!
I’m Zero Hacker
接着显示我的logo