OLED Displays mit 0,91", 0,96" und 1,3" Bildschirm - Produktvorstellung - AZ-Delivery

In this video, we would like to introduce you to the 0.91 ", 0.96", and 1.3 "OLED displays. As part of the video, the technical specifications and differences between the variants are explained. In addition, we show several sample circuits to present how the Displays can be used and how the cabling works.

! Attention: If the video is not displayed for you, you should check your cookie settings. You have to accept all cookies so that the video is visible! 

Here you will find the displays presented:

0.91 inch OLED I2C display

0.96 inch OLED SSD1306 Display I2C

1.3 inches OLED I2C


Wiring 0.91 inch display:

For this project structure, we put together a practical bundle with a great discount on September 22, 2022 (link only works for the specified date):0.91 "OLED and GY-BME280 am ESP8266 D1 Mini





Code 0.91 inch display (lettering with counter):

/*
    ___ _____        ____       ___                      
   /   /__  /       / __ \___  / (_)   _____  _______  __
  / /| | / / ______/ / / / _ \/ / / | / / _ \/ ___/ / / /
 / ___ |/ /_/_____/ /_/ /  __/ / /| |/ /  __/ /  / /_/ / 
/_/  |_/____/    /_____/\___/_/_/ |___/\___/_/   \__, /  
                                                /____/   
 Product, data sheet and Pinout at:
  https://www.az-delivery.de/

 Project: 0.91 OLED display
 Date: 03/2022

*/

// display
#define Screen_Width 128 
#define Screen_height 32 
#include <Adafruit_gfx.H>
#include <Adafruit_ssd1306.H>
Adafruit_ssd1306 display(Screen_Width, Screen_height, &Wire, -1);


void set up() {
  display.Begin(Ssd1306_switchcapvcc, 0x3c);
  delay(100);

  display.Clear display();
  display.SettextSize(1);
  display.SettextColor(White);
  display.setcursor(15, 0);
  display.print("AZ-Delivery");
  display.display();

}

void loop() {

  // Displays every 0.5 seconds is updated
  IF(Millis()%500==0){
    display.Start scrollright(0x00, 0x0f);
  }
  
}

Code 0.91 inch display (air humidity and temperature):

/*
    ___ _____        ____       ___                      
   /   /__  /       / __ \___  / (_)   _____  _______  __
  / /| | / / ______/ / / / _ \/ / / | / / _ \/ ___/ / / /
 / ___ |/ /_/_____/ /_/ /  __/ / /| |/ /  __/ /  / /_/ / 
/_/  |_/____/    /_____/\___/_/_/ |___/\___/_/   \__, /  
                                                /____/   
 Product, data sheet and Pinout at:
  https://www.az-delivery.de/

 Project: 0.91 OLED display
 Date: 03/2022

*/

// display
#define Screen_Width 128 
#define Screen_height 32 
#include <Adafruit_gfx.H>
#include <Adafruit_ssd1306.H>
#include "Graphics.H"
Adafruit_ssd1306 display(Screen_Width, Screen_height, &Wire, -1);

// BME280
#include <Wire.H>
#include <Adafruit_sensor.H>
#include <Adafruit_bme280.H>
Adafruit_bme280 BME;

void set up() {
  display.Begin(Ssd1306_switchcapvcc, 0x3c);
  delay(100);
  display.Clear display();
  display.SettextSize(1);
  display.SettextColor(White);

  delay(100);
  // 0x76 i2c address from the sensor
  IF (!BME.Begin(0x76)) {
    Serial.print("No BME280 sensor found!");
    while (1);
  }
}

void loop() {
  
  //display.startsCrollright(0x00, 0x0f);

  IF(Millis()%500==0){
    float tempo =BME.Reading temperature();
    // Float pressure = bme.Readpressure () /100.0f;
    float humble =BME.readhumidity();  

    display.Clear display();
    display.setcursor(32, 15);
    display.print(String(humble));
    display.Drawbitmap(0, (display.Height()-30)/2, Graphics, 30, 30, 1);

    display.setcursor(92, 15);
    display.print(String(tempo));
    display.Drawbitmap(60, (display.Height()-30)/2, Grafik_T temperature, 30, 30, 1);
    display.display();

  }
}

Associated tables:

Const Unsigned Char Grafik_Luftuachtkeit [] Progmem = {
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x03, 0x80, 0x00, 
	0x00, 0x07, 0x80, 0x00, 0x00, 0x0f, 0xc0, 0x00, 0x00, 0x1f, 0xe0, 0x00, 0x00, 0x3f, 0xf0, 0x00, 
	0x00, 0x3f, 0xf8, 0x00, 0x00, 0x7f, 0xf8, 0x00, 0x00, 0xff, 0xFC, 0x00, 0x01, 0xff, 0xfe, 0x00, 
	0x01, 0xc7, 0xde, 0x00, 0x03, 0x9b, 0xbf, 0x00, 0x03, 0xBB, 0x3f, 0x00, 0x03, 0xBB, 0x7f, 0x00, 
	0x03, 0x82, 0xff, 0x00, 0x03, 0xc4, 0x8f, 0x00, 0x03, 0xfD, 0x37, 0x00, 0x03, 0xfB, 0x77, 0x00, 
	0x03, 0xf3, 0x77, 0x00, 0x03, 0xe7, 0x07, 0x00, 0x01, 0xff, 0xde, 0x00, 0x01, 0xff, 0xfe, 0x00, 
	0x00, 0xff, 0xFC, 0x00, 0x7f, 0xF8, 0x00, 0x00, 0x3f, 0xF0, 0x00, 0x00, 0x0f, 0xc0, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};

Const unsigned char graphic_t temperature [] progmem = {
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x04, 0x80, 0x00, 
	0x00, 0x04, 0x80, 0x00, 0x00, 0x04, 0x80, 0x00, 0x00, 0x04, 0x80, 0x00, 0x00, 0x04, 0xc0, 0x00, 
	0x00, 0x04, 0x80, 0x00, 0x00, 0x04, 0x80, 0x00, 0x00, 0x04, 0x80, 0x00, 0x00, 0x04, 0xc0, 0x00, 
	0x00, 0x04, 0x80, 0x00, 0x00, 0x04, 0x80, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x07, 0x80, 0x00, 
	0x00, 0x07, 0x80, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x07, 0xc0, 0x00, 0x00, 0x07, 0x80, 0x00, 
	0x00, 0x07, 0x80, 0x00, 0x00, 0x0f, 0xc0, 0x00, 0x00, 0x0f, 0xc0, 0x00, 0x00, 0x1f, 0xe0, 0x00, 
	0x00, 0x1f, 0xe0, 0x00, 0x00, 0x1f, 0xe0, 0x00, 0x00, 0x0f, 0xc0, 0x00, 0x00, 0x07, 0x80, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};


Verdrahtung 0,96 Zoll Display:

Code 0,96 Zoll Display (Schriftzug mit Counter):

/*
    ___ _____        ____       ___                      
   /   /__  /       / __ \___  / (_)   _____  _______  __
  / /| | / / ______/ / / / _ \/ / / | / / _ \/ ___/ / / /
 / ___ |/ /_/_____/ /_/ /  __/ / /| |/ /  __/ /  / /_/ / 
/_/  |_/____/    /_____/\___/_/_/ |___/\___/_/   \__, /  
                                                /____/   
 Produkt, Datenblatt und Pinout unter:
  https://www.az-delivery.de/

 Projekt:  0,96 OLED Display
 Datum:    03/2022

*/

//Display
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
//fonts https://learn.adafruit.com/adafruit-gfx-graphics-library/using-fonts#step-2
#include <Fonts/FreeSerif9pt7b.h>
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);

void setup() {
  Serial.begin(115200);
  delay(250);
  display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
}

void loop() {

    if(millis()%1000==0){
      display.clearDisplay();
      display.setTextSize(1);
      display.setFont(&FreeSerif9pt7b);
      display.setTextColor(SSD1306_WHITE);
      display.setCursor(15, 20);
      display.println("AZ-Delivery");

      display.drawRect(0,0,128,64,SSD1306_WHITE);  

      //Original Font
      display.setFont();
      display.setCursor(60, 35);
      long laufzeit = millis()/1000;
      display.println(String(laufzeit));
      display.display();
    }
  
}

Verdrahtung 1,3 Zoll Display:

Code 1,3 Zoll Display (Schriftzug mit Counter):

/*
    ___ _____        ____       ___                      
   /   /__  /       / __ \___  / (_)   _____  _______  __
  / /| | / / ______/ / / / _ \/ / / | / / _ \/ ___/ / / /
 / ___ |/ /_/_____/ /_/ /  __/ / /| |/ /  __/ /  / /_/ / 
/_/  |_/____/    /_____/\___/_/_/ |___/\___/_/   \__, /  
                                                /____/   
 Produkt, Datenblatt und Pinout unter:
  https://www.az-delivery.de/

 Projekt:  1,3 OLED Display
 Datum:    03/2022

*/


#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SH110X.h>
//fonts https://learn.adafruit.com/adafruit-gfx-graphics-library/using-fonts#step-2
#include <Fonts/FreeSerif9pt7b.h>

#define i2c_Address 0x3c 
#define SCREEN_WIDTH 128 
#define SCREEN_HEIGHT 64 
#define OLED_RESET -1  
Adafruit_SH1106G display = Adafruit_SH1106G(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);


void setup(void){ 
    Serial.begin(115200);
    delay(250);
    display.begin(i2c_Address, true);
   

    }

void loop(void) {

    if(millis()%1000==0){
      display.clearDisplay();
      display.setTextSize(1);
      display.setFont(&FreeSerif9pt7b);
      display.setTextColor(SH110X_WHITE);
      display.setCursor(15, 30);
      display.println("AZ-Delivery");

      display.drawRect(0,0,128,64,SH110X_WHITE);  

      //Original Font
      display.setFont();
      display.setCursor(60, 45);
      long laufzeit = millis()/1000;
      display.println(String(laufzeit));
      display.display();
    }
    
}

Code 1,3 Zoll Display (Grafik Logo):

/*
    ___ _____        ____       ___                      
   /   /__  /       / __ \___  / (_)   _____  _______  __
  / /| | / / ______/ / / / _ \/ / / | / / _ \/ ___/ / / /
 / ___ |/ /_/_____/ /_/ /  __/ / /| |/ /  __/ /  / /_/ / 
/_/  |_/____/    /_____/\___/_/_/ |___/\___/_/   \__, /  
                                                /____/   
 Produkt, Datenblatt und Pinout unter:
  https://www.az-delivery.de/

 Projekt:  0,91 OLED Display
 Datum:    03/2022

*/

//Display
#define SCREEN_WIDTH 128 
#define SCREEN_HEIGHT 32 
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include "grafiken.h"
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);

//BME280
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>
Adafruit_BME280 bme;

void setup() {
  display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
  delay(100);
  display.clearDisplay();
  display.setTextSize(1);
  display.setTextColor(WHITE);

  delay(100);
  //0x76 I2C Adresse vom Sensor
  if (!bme.begin(0x76)) {
    Serial.println("Keinen BME280 Sensor gefunden!");
    while (1);
  }
}

void loop() {
  
  //display.startscrollright(0x00, 0x0F);

  if(millis()%500==0){
    float temp =bme.readTemperature();
    //float pressure =bme.readPressure() / 100.0F;
    float hum =bme.readHumidity();  

    display.clearDisplay();
    display.setCursor(32, 15);
    display.println(String(hum));
    display.drawBitmap(0, (display.height()-30)/2, grafik_luftfeuchtigkeit, 30, 30, 1);

    display.setCursor(92, 15);
    display.println(String(temp));
    display.drawBitmap(60, (display.height()-30)/2, grafik_temperatur, 30, 30, 1);
    display.display();

  }
}

Zugehörige Tabelle:

//50 x 50px
const unsigned char mylogo [] PROGMEM = {
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0xff, 0xe0, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 
	0xe0, 0x00, 0x00, 0x07, 0xf0, 0x00, 0x07, 0xf0, 0x00, 0x00, 0x0f, 0x80, 0x00, 0x00, 0xfc, 0x00, 
	0x00, 0x0e, 0x07, 0xff, 0xe0, 0x3e, 0x00, 0x00, 0x1e, 0x1f, 0xff, 0xf0, 0x0f, 0x00, 0x00, 0x1c, 
	0x3f, 0xff, 0xf0, 0x07, 0xc0, 0x00, 0x1c, 0x7e, 0xff, 0xf0, 0x03, 0xc0, 0x00, 0x1c, 0xf0, 0x00, 
	0xf0, 0x01, 0xe0, 0x00, 0x18, 0xe0, 0x00, 0x70, 0x00, 0xf0, 0x00, 0x19, 0xe0, 0x00, 0x70, 0x00, 
	0x70, 0x00, 0x39, 0xe0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x39, 0xe0, 0x00, 0x70, 0x00, 0x3c, 0x00, 
	0x39, 0xe0, 0x00, 0x70, 0x00, 0x1c, 0x00, 0x39, 0xe0, 0x00, 0x70, 0x00, 0x0c, 0x00, 0x39, 0xe0, 
	0x00, 0xf0, 0x00, 0x0e, 0x00, 0x39, 0xff, 0xff, 0xff, 0xff, 0x8e, 0x00, 0x39, 0xff, 0xff, 0xff, 
	0xff, 0xce, 0x00, 0x39, 0xff, 0xff, 0xff, 0xff, 0xc6, 0x00, 0x39, 0xff, 0xff, 0xff, 0xff, 0x86, 
	0x00, 0x39, 0xe0, 0x00, 0x70, 0x0f, 0x07, 0x00, 0x39, 0xe0, 0x00, 0x70, 0x1e, 0x07, 0x00, 0x39, 
	0xe0, 0x00, 0x70, 0x3c, 0x07, 0x00, 0x39, 0xe0, 0x00, 0x70, 0x7c, 0x07, 0x00, 0x39, 0xe0, 0x00, 
	0xf0, 0xf8, 0x06, 0x00, 0x38, 0x00, 0x00, 0x01, 0xf0, 0x06, 0x00, 0x1c, 0x00, 0x00, 0x03, 0xe0, 
	0x0e, 0x00, 0x1c, 0x00, 0x00, 0x07, 0xc0, 0x0e, 0x00, 0x1c, 0x00, 0x00, 0x0f, 0x80, 0x0e, 0x00, 
	0x1e, 0x00, 0x00, 0x0f, 0x00, 0x1c, 0x00, 0x0e, 0x00, 0x00, 0x1e, 0x00, 0x1c, 0x00, 0x0f, 0x00, 
	0x00, 0x3c, 0x00, 0x3c, 0x00, 0x07, 0x00, 0x00, 0x78, 0x00, 0x38, 0x00, 0x07, 0x80, 0x00, 0xff, 
	0xff, 0xf8, 0x00, 0x03, 0xc0, 0x01, 0xff, 0xff, 0xf0, 0x00, 0x01, 0xe0, 0x01, 0xff, 0xff, 0xe0, 
	0x00, 0x01, 0xe0, 0x01, 0xff, 0xff, 0xc0, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x07, 0xc0, 0x00, 0x00, 
	0x7c, 0x00, 0x00, 0x0f, 0x80, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x0f, 0xc0, 
	0x00, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xf0, 0x07, 0xf0, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xe0, 
	0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x03, 0xf0, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};

Code 1,3 Zoll Display (Schriftzug mit u8g2 Library):

/*
    ___ _____        ____       ___                      
   /   /__  /       / __ \___  / (_)   _____  _______  __
  / /| | / / ______/ / / / _ \/ / / | / / _ \/ ___/ / / /
 / ___ |/ /_/_____/ /_/ /  __/ / /| |/ /  __/ /  / /_/ / 
/_/  |_/____/    /_____/\___/_/_/ |___/\___/_/   \__, /  
                                                /____/   
 Produkt, Datenblatt und Pinout unter:
  https://www.az-delivery.de/

 Projekt:  1,3 OLED Display
 Datum:    03/2022

*/

//Display
#include <U8g2lib.h>

U8G2_SH1106_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0);

void setup(void){ 
  u8g2.begin();
}

void loop(void) {
  u8g2.firstPage();
  do {
    u8g2.setFont(u8g2_font_ncenB14_tr);
    u8g2.drawStr(0,32,"AZ-Delivery");
  } while ( u8g2.nextPage() );

  delay(1000); 
}

3 comments

Peter Müller

Peter Müller

Hallo, Frage:
ich möchte einen längeren Text als scroll ausgeben – in EINER Zeile – bisher wird immer ein Zeilenumbruch ausgelöst, und der Text wird auf 4 Zeilen untereinander “zerlegt” – gibt es dazu einen Tipp? – Vielen Dank im Voraus

Andreas Wolter

Andreas Wolter

@Thomas: die Datei grafiken.h wird im ersten Teil der Quellcodes inkludiert.
Diese Datei muss sich im gleichen Ordner wie die .INO Datei befinden. Wenn Sie diese dann in der Arduino IDE öffnen, erscheint im oberen Teil des Editors ein weiterer Reiter für diese zusätzliche Datei. Dort hinein kopieren sie den Teil der “zugehörigen” Tabellen.
Sie können diese Tabellen auch direkt in die INO schreiben, müssen dann aber den include für die Datei auskommentieren.

Grüße,
Andreas Wolter
AZ-Delivery Blog

Thomas

Thomas

Hallo,
versuche gerade den Sketch(Code 0,91 Zoll Display (Luftfeuchte und Temperatur) hochzuladen, leider bricht Arduino mit der Fehlermeldung “Compilation error: grafiken.h: No such file or directory”
Jetzt frag ich mich was mache ich mit der zugehörigen Tabelle, wie binde ich diese ein. Ich denke dann gibt der Compilation error ruhe.
Wäre für jede Hilfe dankbar! Bin absoluter Neuling.

Liebe Grüße
Thomas

Leave a comment

All comments are moderated before being published

Recommended blog posts

  1. ESP32 jetzt über den Boardverwalter installieren - AZ-Delivery
  2. Internet-Radio mit dem ESP32 - UPDATE - AZ-Delivery
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1 - AZ-Delivery
  4. ESP32 - das Multitalent - AZ-Delivery