Arduino提高篇—点亮OLED显示屏

电子说

1.2w人已加入

描述

OLED「OrganicLight-Emitting Diode」,有机发光二极管,又称有机发光半导体,是当下非常受欢迎的显示技术。OLED显示屏与传统LCD显示方式不同,它无需背光,每个像素点自发光,体积更小、更轻更薄更省电,而且能做成柔性屏。本篇介绍Arduino下OLED屏的使用。

1. OLED屏介绍

OLED屏因其小巧轻薄耗电低等特点,越来越多的应用于嵌入式电子设备中。OLED屏种类不同,显示的颜色也不同,常用的有白色显示、蓝色显示和黄蓝双色显示。屏幕的尺寸和内置驱动芯片也多种多样,常用的驱动接口有SPI和IIC两种。本篇中使用的使一款0.96寸蓝色IIC驱动屏,其内置驱动芯片为SSD1306。

2. 安装驱动库

OLED显示屏驱动库非常多,本篇我们使用两个库:「Adafruit_SSD1306」和「Adafruit_GFX」。在Arduino IDE中点击「项目」—「加载库」—「管理库」,分别查找选择最新版本进行安装。

USB数据线

安装Adafruit_SSD1306库

USB数据线

安装Adafruit_GFX库

3.实验材料

  • Uno R3开发板
  • 配套USB数据线
  • 面包板及配套连接线
  • OLED显示屏

4.实验步骤

1. 根据原理图搭建电路图。

IIC接口只需要两根线。OLED屏的VCC和GND分别连接开发板的3.3V和GND,OLED屏的SDA和SCL分别连接开发板A4和A5。

实验原理图如下图所示:

USB数据线

电路连接图

实物连接图如下图所示:

USB数据线

实物连接图

2. 新建sketch,拷贝如下代码替换自动生成的代码并进行保存。

1/*
 2 * OLED显示
 3 */
 4#include < Wire.h >
 5#include < Adafruit_GFX.h >
 6#include < Adafruit_SSD1306.h >
 7
 8#define OLED_RESET     4
 9Adafruit_SSD1306 display(128, 64, &Wire,OLED_RESET);
10
11void setup() {
12  display.begin(SSD1306_SWITCHCAPVCC,0x3C);
13  display.setTextColor(WHITE);//开像素点发光
14  display.clearDisplay();//清屏
15
16  display.setTextSize(1); //设置字体大小  
17  display.setCursor(35, 5);//设置显示位置
18  display.println("-TonyCode-");
19
20  display.setTextSize(2);//设置字体大小  
21  display.setCursor(15, 30);//设置显示位置
22  display.println("OLED TEST");
23
24  display.display(); // 开显示
25
26}
27
28void loop() {
29
30}

3. 连接开发板,设置好对应端口号和开发板类型,进行程序下载。

USB数据线

程序下载

4. 实验现象

较LCD液晶显示屏,OLED的显示效果非常不错,且可视角度更大。

USB数据线

实验现象

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分