目录
4.2 使用Adafruit_GFX和Adafruit_SSD1306
1、所需材料
Arduino UNO开发板+OLED显示屏+公对母杜邦线四根+u8g2库(或者adafruit库)
2、模块简介
2.1 Arduino UNO
Arduino Uno 是一款基于 微控制器 MTATmega328P的开发板。它有14个数字输入/输出引脚(这些引脚中有6个引脚可以作为PWM输出引脚),6个模拟输入引脚,16 MHz石英晶振,USB接口,电源接口,支持在线串行编程以及复位按键。用户只需要将开发板与电脑通过USB接口连接就可以使用。
2.2 OLED显示模块
常用的有白色显示、蓝色显示和黄蓝双色显示。屏幕的尺寸和内置驱动芯片也多种多样,常用的驱动接口有SPI和IIC两种。本次使用的是一款0.96寸蓝色IIC驱动屏,其内置驱动芯片为SSD1306。
3、接口接线
Arduino UNO | OLED显示模块 |
5V | VCC |
GND | GND |
A5 | SCL |
A4 | SDA |
4、使用的附加库+代码示例
4.1 使用U8g2lib
#include <Arduino.h>
#include <U8g2lib.h>//加载U8g2lib库
#include <Wire.h> // 加载Wire库
//iic驱动方式
U8G2_SSD1306_128X64_NONAME_1_SW_I2C u8g2(U8G2_R0, /* clock=*/ SCL, /* data=*/ SDA, /* reset=*/ U8X8_PIN_NONE);
void setup(void) {
u8g2.begin();
}
uint8_t m = 0; //定义起始数字
void loop(void) {
char m_str[3];
strcpy(m_str, u8x8_u8toa(m, 2));
u8g2.firstPage();
do {
u8g2.setFont(u8g2_font_logisoso62_tn);
u8g2.drawStr(50,63,m_str);
} while ( u8g2.nextPage() );
delay(1000);
m++; //数值累加
if ( m == 60 )
m = 0;
}
4.2 使用Adafruit_GFX和Adafruit_SSD1306
#include <SPI.h> // 加载SPI库
#include <Wire.h> // 加载Wire库
#include <Adafruit_GFX.h> // 加载Adafruit_GFX库
#include <Adafruit_SSD1306.h> // 加载Adafruit_SSD1306库
// 定义 OLED屏幕的分辨率
Adafruit_SSD1306 display = Adafruit_SSD1306(128, 64, &Wire);
void setup() {
Serial.begin(9600);
Serial.println("OLED FeatherWing test"); // 串口输出
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay(); // 清空屏幕
display.setTextSize(2); // 设置字体大小
display.setTextColor(SSD1306_WHITE); // 设置字体颜色
display.setCursor(0,0); // 设置开始显示文字的坐标
display.println("Hello"); // 输出的字符
display.println("Arduino");
display.display();
}
void loop() {
}
5、总结
使用OLED显示模块可以实现串口数据显示,还可以与其他模块联合使用,实现实时显示开发板实时数据。