Arduino大师练成手册 --控制 OLED

要在 Arduino 上使用 U8glib 库控制带有 7 个引脚的 SPI OLED 显示屏,你可以按照以下步骤进行:

7pin OLED硬件连接

GND:连接到 Arduino 的 GND 引脚。

VCC:连接到 Arduino 的 5V 引脚。

D0(或 SCK/CLK):连接到 Arduino 的 SCK 引脚(通常是 D13)。

D1(或 MOSI):连接到 Arduino 的 MOSI 引脚(通常是 D11)。

RES(或 RST):连接到 Arduino 的任意数字引脚(例如 D8)。

DC(或 D/C):连接到 Arduino 的任意数字引脚(例如 D9)。

CS:连接到 Arduino 的任意数字引脚(例如 D10)。

8pin OLED硬件连接

硬件连接
GND:连接到 Arduino 的 GND 引脚。

VCC:连接到 Arduino 的 5V 引脚。

D0(或 SCK/CLK):连接到 Arduino 的 SCK 引脚(通常是 D13)。

D1(或 MOSI):连接到 Arduino 的 MOSI 引脚(通常是 D11)。

RES(或 RST):连接到 Arduino 的任意数字引脚(例如 D8)。

DC(或 D/C):连接到 Arduino 的任意数字引脚(例如 D9)。

CS:连接到 Arduino 的任意数字引脚(例如 D10)。

FS0 和 CS2:通常不需要连接,具体取决于你的 OLED 模块。

安装 U8glib 库

打开 Arduino IDE。

选择“工具” -> “管理库”。

在库管理器中搜索“U8glib”,然后安装该库。

代码示例

以下是一个简单的示例代码,用于通过 SPI 接口控制 OLED 显示屏:

#include "U8glib.h"// 创建 U8GLIB_SSD1306_128X64 对象
U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SCK = 13, MOSI = 11, CS = 10, A0 = 9void setup() {// 初始化 OLED 显示屏if (u8g.getMode() == U8G_MODE_R3G3B2) {u8g.setColorIndex(255); // 白色} else if (u8g.getMode() == U8G_MODE_GRAY2BIT) {u8g.setColorIndex(3); // 最大强度} else if (u8g.getMode() == U8G_MODE_BW) {u8g.setColorIndex(1); // 像素开启}Serial.begin(9600);u8g.setFont(u8g_font_6x10);u8g.setFontRefHeightExtendedText();u8g.setDefaultForegroundColor();u8g.setFontPosTop();
}void loop() {u8g.firstPage();do {u8g.drawStr(0, 0, "hello world!");} while (u8g.nextPage());delay(500); // 每 500 毫秒更新一次
}

连接示意图

GND -> Arduino GND

VCC -> Arduino 5V

D0 -> Arduino D13 (SCK)

D1 -> Arduino D11 (MOSI)

RES -> Arduino D8

DC -> Arduino D9

CS -> Arduino D10

重要提示

库安装:确保安装了 U8glib 库。如果没有安装,可以在 Arduino IDE 的库管理器中搜索并安装。

引脚定义:确保代码中的引脚定义与实际连接一致。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/68201.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

水果实体店品牌数字化:RWA + 智能体落地方案

一、方案背景 随着数字化技术的迅猛发展,实体零售行业正面临前所未有的挑战与机遇。传统的零售模式难以满足消费者对个性化、便捷化、智能化的需求,尤其是在水果等生鲜商品领域,如何通过技术手段提升运营效率、增强顾客体验、拓宽盈利模式&a…

业务对象和对象的区别

"业务对象"和"对象"这两个术语在日常编程和软件工程中经常被使用,但它们之间存在一些区别,主要体现在它们的目的、范围和抽象层次上。 ### 对象(Object) 1. **定义**: - 对象是面向对象编程&#…

三高“高性能、高并发、高可靠”系统架构设计系列文章

目录 高并发系统的艺术:如何在流量洪峰中游刃有余 《数据密集型应用系统设计》读后感与高并发高性能实践案例 系统稳定性与高可用保障的几种思路 软件系统限流的底层原理解析 技术解决方案调研 延迟队列调研 重试调研 异步回调调研 分库分表调研 分布式事…

ray.rllib-入门实践-12:自定义policy

在本博客开始之前,先厘清一下几个概念之间的区别与联系:env, agent, model, algorithm, policy. 强化学习由两部分组成: 环境(env)和智能体(agent)。环境(env)提供观测值和奖励; agent读取观测值&#x…

CVE-2024-23897-Jenkins任意文件读取漏洞复现

content Jenkins是什么CVE-2024-23897总结修复建议 Jenkins是什么 Jenkins是一人基于Java开发的、可扩展的持续集成引擎,用于持续、自动地构建/测试软件项目,可以监控一些定时执行的任务。 官网文档: Jenkins是一款开源 CI&CD 软件&…

Lua 环境的安装

1.安装Lua运行环境 本人采用的是在windows系统中使用cmd指令方式进行安装,安装指令如下: winget install "lua for windows" 也曾使用可执行程序安装过,但由于电脑是加密电脑,最后都已失败告终。使用此方式安装可以安…

基于微信小程序的网上订餐管理系统

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…

【矩阵二分】力扣378. 有序矩阵中第 K 小的元素

给你一个 n x n 矩阵 matrix ,其中每行和每列元素均按升序排序,找到矩阵中第 k 小的元素。 请注意,它是 排序后 的第 k 小元素,而不是第 k 个 不同 的元素。 你必须找到一个内存复杂度优于 O(n2) 的解决方案。 示例 1&#xff1…

基于微信小程序的助农扶贫系统设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌。 技术范围:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:…

Effective C++ 规则47: 请使用 Traits Class 表现类型信息

1、背景 C 是一种静态类型语言,类型的特性在编译期就可以被识别和操作。为了更好地利用编译期信息来编写高效、灵活、可维护的代码,C 提供了一些技术来“萃取”或“提取”类型的相关信息。即利用 traits 类来封装和提取类型信息,以便在编译期…

Linux Futex学习笔记

Futex 简介 概述: Futex(Fast Userspace Mutex)是linux的一种特有机制,设计目标是避免传统的线程同步原语(如mutex、条件变量等)在用户空间和内核空间之间频繁的上下文切换。Futex允许在用户空间处理锁定和等待的操作&#xff0…

小柯剧场训练营第一期音乐剧演员与第二期报名拉开帷幕!

在当下社会文化浪潮中,小柯剧场凭借其独特的培养模式和“先看戏后买票”的良心举措,已然成为艺术界的一股清流。1月12日,由“第一期免费训练营”优秀学员们所带来的新一代《稳稳的幸福》成功落幕,引起了社会的广泛关注。该活动不仅…

基于迁移学习的ResNet50模型实现石榴病害数据集多分类图片预测

完整源码项目包获取→点击文章末尾名片! 番石榴病害数据集 背景描述 番石榴 (Psidium guajava) 是南亚的主要作物,尤其是在孟加拉国。它富含维生素 C 和纤维,支持区域经济和营养。不幸的是,番石榴生产受到降…

【论文阅读】HumanPlus: Humanoid Shadowing and Imitation from Humans

作者:Zipeng Fu、Qingqing Zhao、Qi Wu、Gordon Wetstein、Chelsea Finn 项目共同负责人,斯坦福大学 项目网址:https://humanoid-ai.github.io 摘要 制造外形与人类相似的机器人的一个关键理由是,我们可以利用大量的人类数据进行…

2025牛客寒假算法基础集训营2

H 一起画很大的圆&#xff01; 看起来像是一道计算几何的题&#xff0c;实际上通过分析和猜想&#xff0c;是有O1复杂度的结论的。具体证明略&#xff0c;结论是三点越接近共线&#xff0c;得出的半径越大。 #include <bits/stdc.h> using namespace std; #define endl \…

PVE 虚拟机安装 Debian 无图形化界面服务器

Debian 安装 Debian 镜像下载 找一个Debian镜像服务器&#xff0c;根据需要的版本和自己硬件选择。 iso-cd/&#xff1a;较小&#xff0c;仅包含安装所需的基础组件&#xff0c;可能需要网络访问来完成安装。有镜像 debian-12.9.0-amd64-netinst.isoiso-dvd/&#xff1a;较…

硬件学习笔记--35 AD23的使用常规操作

原理图设计 1&#xff09;新建原理图&#xff0c;File-new-Schematic。相关设置参考&#xff0c;主要包含图纸设置以及常规的工具栏。 PCB的设计 新建PCB&#xff0c;设置相应的规则&#xff08;与原理图中相对应&#xff09;&#xff0c;放到同一个工程中。如果有上一版本的…

解读2025年生物医药创新技术:展览会与论坛的重要性

2025生物医药创新技术与应用发展展览会暨论坛&#xff0c;由天津市生物医药行业协会、BIO CHINA生物发酵展组委会携手主办&#xff0c;山东信世会展服务有限公司承办&#xff0c;定于2025年3月3日至5日在济南黄河国际会展中心盛大开幕。展会规模60000平方米、800参展商、35场会…

Poseidon哈希为什么适合做ZKP

论文- https://eprint.iacr.org/2019/458.pdf Poseidon 哈希算法的硬件加速与实现 实用的计算完整性证明系统领域&#xff0c;如 SNARKs、STARKs、Bulletproofs&#xff0c;正在经历非常动态的发展&#xff0c;最近出现了几种具有改进性能和放宽设置要求的结构。此类系统的许多…

开始步入达梦中级dba

分析内存使用需要的方法之一 disql /nolog conn sysdba/sysdbaselect value from v$parameter where nameMEMORY_LEAK_CHECK; SP_SET_PARA_VALUE(0,MEMORY_LEAK_CHECK,1); select * from V$MEM_REGINFO; select * from V$MEM_HEAP;