教程八 OLED屏幕控制例程
来自Waveshare Wiki
各模块使用教程
- 序章 安装Arduino IDE
- 教程一 带编码器电机控制例程
- 教程二 无编码器电机控制例程
- 教程三 ST3215总线舵机控制例程
- 教程四 PWM舵机控制例程
- 教程五 IMU数据读取例程
- 教程六 SD卡读取例程
- 教程七 INA219电压电流监测例程
- 教程八 OLED屏幕控制例程
- 教程九 激光雷达和在ROS2中发布雷达话题
- General Driver for Robots 主页
- UGV01 主页
OLED屏幕控制
General Driver for Robots板载IIC接口,SSD1306的OLED模块可通过IIC与驱动板连接,达成在OLED屏幕上显示信息的效果,以下提供OLED屏幕控制程序。
例程
上传程序
点击左边第三个图标,在搜索栏中输入“Adafruit_SSD1306”,找到依赖库Adafruit_SSD1306并点击安装。

下载压缩包后打开SSD1306.ino,用USB线将多功能驱动板和计算机连接起来(此处插入的是多功能驱动板USB的Type-C接口),点击“工具”→“端口”,再点击新出现的COM(我这里新出现的COM为COM26)。
![]()
在Arduino IDE中,点击“工具”→“开发板”→“ESP32”→“ESP32 Dev Module”。开发板以及端口都选择好后上传程序。上传程序后,将IIC外设扩展接口与OLED屏幕连接后,OLED屏幕上会显示WAVESHARE。
程序解析
#include <Wire.h>
#define S_SCL 33
#define S_SDA 32
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 32 // OLED display height, in pixels
#define OLED_RESET -1 // Reset pin # (or -1 if sharing Arduino reset pin)
#define SCREEN_ADDRESS 0x3C ///< See datasheet for Address; 0x3D for 128x64, 0x3C for 128x32
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
void InitScreen(){
if(!display.begin(SSD1306_SWITCHCAPVCC, SCREEN_ADDRESS)) {
Serial.println(F("SSD1306 allocation failed"));
}
display.clearDisplay();
display.display();
}
void Screenupdate(){
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(SSD1306_WHITE);
display.setCursor(0,0);
display.print(F("WAVESHARE"));
display.display();
}
void setup() {
Wire.begin(S_SDA,S_SCL);
InitScreen();
}
void loop() {
Screenupdate();
delay(1);
}
