ESP8266 NodeMCU 使用 7 针 SPI 协议在 SSD1306 OLED 上显示文字

本教程将演示如何在 Arduino IDE 下使用 ESP8266 NodeMCU 在 7 针 SPI 协议的 SSD1306 OLED 显示屏上显示文字。

代码示例

#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include <SPI.h>

#define OLED_MOSI 13
#define OLED_CLK  14
#define OLED_DC   12
#define OLED_CS   15
#define OLED_RESET 4

Adafruit_SSD1306 display(OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS);

void setup() {
  display.begin(SSD1306_SWITCHCAPVCC);
  display.clearDisplay();
  display.setTextColor(WHITE);
  display.setTextSize(1);
}

void loop() {
  display.clearDisplay();
  display.setCursor(0, 0);
  display.println('Hello World!');
  display.display();
  delay(1000);
}

代码解释

  1. 包含头文件:

    • Adafruit_GFX.h: 用于图形绘制操作。
    • Adafruit_SSD1306.h: 用于控制 SSD1306 显示屏。
    • SPI.h: 用于 SPI 通信。
  2. 定义引脚:

    • OLED_MOSI: MOSI 引脚。
    • OLED_CLK: CLK 引脚。
    • OLED_DC: DC 引脚。
    • OLED_CS: CS 引脚。
    • OLED_RESET: RESET 引脚。
  3. 创建显示屏对象:

    • Adafruit_SSD1306 display(OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS); 创建一个 SSD1306 显示屏对象,并传入相应的引脚信息。
  4. 初始化设置 (setup 函数):

    • display.begin(SSD1306_SWITCHCAPVCC);: 初始化显示屏,设置电源模式为内部电容供电。
    • display.clearDisplay();: 清除显示屏内容。
    • display.setTextColor(WHITE);: 设置字体颜色为白色。
    • display.setTextSize(1);: 设置字体大小为 1。
  5. 循环显示 (loop 函数):

    • display.clearDisplay();: 清除显示屏内容。
    • display.setCursor(0, 0);: 设置光标位置为 (0, 0)。
    • display.println('Hello World!');: 使用 println() 函数输出“Hello World!”字符串。
    • display.display();: 更新显示屏内容。
    • delay(1000);: 延迟 1 秒。

总结

以上代码实现了在 ESP8266 NodeMCU 上使用 SSD1306 OLED 显示屏显示文字。你可以根据需要修改代码,例如调整字体、位置、颜色等参数,来实现更丰富的显示效果。

注意事项

  • 请确保你已正确连接 SSD1306 显示屏到 ESP8266 NodeMCU,并根据你的实际情况调整引脚定义。
  • 如果你遇到问题,请参考相关库的文档进行排查。
ESP8266 NodeMCU 使用 7 针 SPI 协议在 SSD1306 OLED 上显示文字

原文地址: https://www.cveoy.top/t/topic/mOqA 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录