记录一个 SSD106 oled屏spi模式下RST引脚的一个坑,注意博文发布的时间
Posted 不打鱼光晒网
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记录一个 SSD106 oled屏spi模式下RST引脚的一个坑,注意博文发布的时间相关的知识,希望对你有一定的参考价值。
不要省略RST的控制
虽然直接拉高也行,但有时候会抽风,他妈的
程序好好的,突然就花屏
无显示
折腾到现在
发现是偷懒,RST的语句没写
补回,好了
ESP8266 NodeMCU驱动OLED屏(SSD1306,4PIN,IIC)
这里记录一下ESP8266 NodeMCU驱动0.96英寸的OLED屏的过程。
1. 硬件
- ESP8266-NodeMCU开发板
- 0.96英寸OLED屏模块 蓝色(4pin插针)
- 杜邦线
ESP8266-NodeMCU开发板和OLED引脚对应关系
开发板引脚 | OLED屏引脚 |
---|---|
3.3V | VCC |
G (GND) | GND |
D1(GPIO5) | SCL |
D2(GPIO4) | SDA |
2. 开发
2.1. 在Arduino中安装依赖的库文件,【项目】→【加载库】→【管理库】:
搜索“SSD1306”,安装“Adafruit SSD1306”这个库
搜索“GFX”,安装“Adafruit GFX Library”这个库
2.2. 代码
代码如下:
#include <stdio.h>
#include <stdlib.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
Adafruit_SSD1306 display(128, 64, &Wire, -1);
void setup()
Serial.begin(115200); //打开串口通讯,设置传输速率为115200字节每秒
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C))
Serial.println(F("SSD1306 allocation failed"));
for (;;);
delay(2000);
display.clearDisplay();
display.setTextColor(WHITE);
int flag = 1;
void loop()
// 3秒刷新显示内容
delay(3000);
// 清空显示
display.clearDisplay();
// 使更改的显示生效
display.display();
// 判断应该显示的内容
flag = flag % 4;
if (flag == 1)
// 这段时间可以显示时间
display.setTextSize(1); // 设置字体大小(1~8)
display.setCursor(0, 0); // 设置坐标
display.print("Time:"); // 显示内容
display.setTextSize(2);
display.setCursor(0, 15);
display.print("2022-03-18 21:51:18");
if (flag == 2)
// 这段时间可以显示天气
display.setTextSize(1);
display.setCursor(0, 0);
display.print("Weather: ");
display.setTextSize(2);
display.setCursor(0, 15);
display.print("Sunny ");
display.print(28.6);
display.setTextSize(1);
display.cp437(true);
display.write(167);
display.setTextSize(2);
display.print("C");
if (flag == 3)
// 这段时间可以显示温度
display.setTextSize(1);
display.setCursor(0, 0);
display.print("Temperature: ");
display.setTextSize(2);
display.setCursor(0, 15);
display.print(28.6);
display.print(" ");
display.setTextSize(1);
display.cp437(true);
display.write(167);
display.setTextSize(2);
display.print("C");
else if (flag == 0)
Serial.println("show humidity 4 \\n");
// 这段时间可以显示湿度
display.setTextSize(1);
display.setCursor(0, 0);
display.print("Humidity: ");
display.setTextSize(2);
display.setCursor(0, 15);
display.print(46);
display.print(" %");
flag++;
display.display();
转载请注明出处——胡玉洋 《ESP8266 NodeMCU驱动OLED屏(SSD1306,4PIN,IIC)》
以上是关于记录一个 SSD106 oled屏spi模式下RST引脚的一个坑,注意博文发布的时间的主要内容,如果未能解决你的问题,请参考以下文章
ESP8266 NodeMCU驱动OLED屏(SSD1306,4PIN,IIC)
ESP8266 NodeMCU驱动OLED屏(SSD1306,4PIN,IIC)
PMS5003ST+Arduino Nano OLED屏显示