Ga naar de inhoud

Welkom op onze vernieuwde webshop! Loop je ergens tegenaan of mis je iets? Laat het ons weten via info@benselectronics.nl

1.54 Inch OLED Display Wit

Artikelnummer IR53

€ 11,95Incl. btw€ 9,88 excl. btw

Op voorraad

  • Gratis verzending vanaf €100 (Nederland/België)
  • Uit ons eigen magazijn in Nederland geleverd

Voeg met minimale inspanning een scherp, contrastrijk display toe aan je volgende project. Dit 1,54-inch OLED-scherm heeft een heldere 128x64 resolutie en maakt gebruik van het eenvoudige I2C-protocol, waarvoor slechts twee datalijnen van je microcontroller nodig zijn. De diepe zwarttinten en het lage stroomverbruik maken het de perfecte visuele output voor elk Arduino-, ESP32- of Raspberry Pi-project waar zowel helderheid als efficiëntie essentieel zijn. Binnen enkele minuten aan de slag met breed beschikbare libraries!

De libraries Adafruit_GFX en Adafruit_SSD1306 zijn beide te downloaden vanaf de Library Manager in de Arduino IDE, maar zijn ook te vinden op Github via de link hieronder:

Voorbeeld sketch (zoals te zien op de foto):

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

// Screen properties
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define OLED_RESET -1 // Reset pin # (-1 if sharing Arduino reset pin)

// Initialize the display object
// IMPORTANT: If this doesn't work, your I2C address might be 0x3D
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

void setup() {
  Serial.begin(115200);

  // Initialize OLED display with I2C address 0x3C
  if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
    Serial.println(F("SSD1309 allocation failed"));
    for (;;)
      ; // Don't proceed, loop forever
  }

  // 1. Maak het scherm/display leeg
  display.clearDisplay();

  // --- Teken de tekst ---
  display.setTextSize(1);
  display.setTextColor(SSD1306_WHITE);
  display.setCursor(7, 5);
  display.println(F("benselectronics.nl"));

  // --- Teken het lampje ---
  // Bulb properties
  int16_t bulbCenterX = SCREEN_WIDTH / 2; // 64
  int16_t bulbCenterY = 35;
  int16_t bulbRadius = 16;

  // Base properties
  int16_t baseWidth = 18;
  int16_t baseHeight = 9;
  int16_t baseX = bulbCenterX - (baseWidth / 2);
  int16_t baseY = bulbCenterY + bulbRadius - 2; // Overlap by 2 pixels

  // 1. Teken de cirkel voor het lampje
  display.drawCircle(bulbCenterX, bulbCenterY, bulbRadius, SSD1306_WHITE);

  // 2. Teken de vierkante box om de "schroef"lijnen
  display.drawRect(baseX, baseY, baseWidth, baseHeight, SSD1306_WHITE);

  // 3. Teken de lijnen voor de "schroef"
  display.drawFastHLine(baseX, baseY + 3, baseWidth, SSD1306_WHITE);
  display.drawFastHLine(baseX, baseY + 6, baseWidth, SSD1306_WHITE);

  // 4. Laat het getekende plaatje op het display zien
  display.display();
}

void loop() {
  // Niet nodig. Is een statisch scherm.
}