【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();
相关推荐
笨#小孩12 小时前
中间件解析漏洞与编辑器漏洞:Web安全绕过的“捷径”
web安全·中间件·编辑器
持敬chijing2 天前
PHP开发-环境搭建-安装phpstudy-vscode工具
开发语言·vscode·php
csdn_aspnet2 天前
Copilot能换成本地吗?VSCode接本地大模型本地化接入方案
ide·vscode·ai·ollama
大数据专业的小沉2 天前
解决PyCharm 2024.1 打开项目后持续卡顿,UI 无响应,编辑延迟明显
ide·python·pycharm
青 春 记 忆2 天前
零基础入门python04:用注册校验理解字典、集合和条件判断
开发语言·vscode·python·python3.11
ue星空2 天前
【Android Studio】中文汉化教程|设置中文界面方法
android·ide·android studio
00后程序员张2 天前
有没有更轻量的 iOS 开发环境?快蝎kxapp轻量化路径与构成
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
buhuizhiyuci3 天前
【Linux 网络篇】数据的 “循环系统“:协议认识与网络传输的流程
linux·运维·服务器·网络·vscode
猿小猴子3 天前
主流 Agent 之 「Zed」和 「ZCode」 介绍
ide·ai·agent·zed·zhipu·ade·zcode
ue星空3 天前
【Godot】更换编辑器外观主题
编辑器·游戏引擎·godot