【esp32]VSCode-SPI控制OLED

根据Adafruit_GFX第三方库,其drawPixel方法由子类实现

代码:在OLED实现函数功能

先声明类

SPI库和Adafruit库、SSD1306

复制代码
#include <Arduino.h>
#include <SPI.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

定义OLED屏幕长和宽

复制代码
#define WIDTH 128
#define HIGHT 64

初始化引脚

复制代码
#define OLED_MOSI 13
#define OLED_SCK 18
#define OLED_DC 2
#define OLED_CS 4
#define OLED_RESET 15

构造对象(长、宽、以及对应各个引脚)使用Ctrl+函数名,可查看函数定义

复制代码
Adafruit_SSD1306 oled(WIDTH,HIGHT,OLED_MOSI,OLED_SCK,OLED_DC,OLED_RESET,OLED_CS);

使用步骤:

初始化OLED,

复制代码
  //OLED初始化
 oled.begin();
 //清除显示
 oled.clearDisplay();

初始化成功后,调用函数,最后调用display()

复制代码
//绘制水平线
 oled.drawFastHLine(32,5,48,SSD1306_WHITE);
 //绘制斜线
 oled.drawLine(32,5,48,30,SSD1306_WHITE);

 oled.drawRect(5,5,10,25,SSD1306_WHITE);
 oled.fillRect(75,5,10,30,SSD1306_WHITE);
 
 //设置光标位置
 oled.setCursor(5,50);
 //设置字体大小
 oled.setTextSize(1,1);
 //设置文本颜色
  oled.setTextColor(SSD1306_WHITE);
 //显示文字
 oled.println("HELLO WORLD!");

 //显示内容
  oled.display();
相关推荐
VidDown12 天前
VidDown 工具站:免费、本地优先的开发者工具箱
javascript·编辑器·音视频·视频编解码·视频
摇滚侠12 天前
IDEA 创建 Java 项目 手动整合 SSM 框架
java·ide·intellij-idea
霸道流氓气质12 天前
Trae IDE 新手入门指南
ide
VidDown12 天前
显卡处理视频技术详解:从硬解码到 NVENC,GPU 如何让视频处理起飞?
javascript·编辑器·音视频·视频编解码·视频
夜猫逐梦12 天前
【UE基础】03.蓝图与编辑器工作流
编辑器·ue·蓝图·ue编辑器
VidDown12 天前
视频帧率技术详解:从 24fps 到 120fps,帧率如何影响你的观看体验?
网络·网络协议·编辑器·音视频·视频编解码·视频
爱就是恒久忍耐12 天前
VSCode里如何比较2个branch
ide·vscode·编辑器
意法半导体STM3212 天前
【官方原创】如何为STM32CubeMX2配置Visual Studio Code配置方案
vscode·stm32·单片机·嵌入式硬件·策略模式·stm32cubemx·嵌入式开发
bloglin9999912 天前
vscode中可视化的合并分支,在“合并编辑器中解析”中“与基线进行比较”是什么意思
ide·vscode·编辑器
终将老去的穷苦程序员12 天前
IntelliJ IDEA 的安装教程
java·ide·intellij-idea