Kuinka käyttää 0,91 "OLED -näyttöä Arduinon kanssa

How to Use a 0.91" OLED Display with Arduino

Eräs 0,91 "OLED -näyttö on pieni, korkean kontrastinäyttö, joka on täydellinen Tekstin, grafiikan ja anturitietojen näyttäminen Arduino -projekteissa. Tämä opas opastaa sinut läpi Johdotus, koodaus ja tekstin ja grafiikan näyttäminen käyttämällä SSD1306-pohjainen OLED-moduuli Arduinon kanssa.


1. Mitä tarvitset

Arduino -lautakunta (UNO, Mega, Nano jne.)
0,91 "OLED -näyttö (SSD1306, I2C)
Hyppyjohdot
Arduino IDE asennettu

🔹 Huomaa: Tämä opetusohjelma keskittyy I2C -viestintä, joka käyttää vain Kaksi johtoa (SDA & SCL), tekee siitä ihanteellisen yksinkertaisille projekteille.


2.

OLED -näyttötappi Arduino uno -nasta Arduino -nanotappi
VCC 5V 5V
Hölynpöly Hölynpöly Hölynpöly
SDA A4 (SDA) A4 (SDA)
SCL A5 (SCL) A5 (SCL)

🔹 Arduino -megaanKäyttää SDA (nasta 20) ja SCL (nasta 21).


3. vaadittavien kirjastojen asentaminen

Asenna ennen koodausta Adafruit SSD1306 ja Adafruit gfx Kirjastot:

  1. Avata Arduino IDE.
  2. Mennä jhk Luonnos → Sisällytä kirjasto → Hallitse kirjastoja.
  3. Etsiä jtk Adafruit SSD1306 ja asenna se.
  4. Etsiä jtk Adafruit gfx ja asenna se.

4. Peruskoodi, joka näyttää tekstiä OLED: ssä

Tämä esimerkki alustaa OLED: n ja näyttää "Hei, Arduino!".

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

// Define OLED screen size
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 32

// Initialize OLED display (I2C address 0x3C)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);

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

    // Start OLED display
    if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
        Serial.println("SSD1306 allocation failed");
        for (;;);
    }

    display.clearDisplay();  // Clear buffer
    display.setTextSize(1);  // Text size
    display.setTextColor(SSD1306_WHITE);
    display.setCursor(10, 10);
    display.println("Hello, Arduino!");
    display.display(); // Show text on screen
}

void loop() {
    // Nothing here (text is static)
}

🔹 Mitä tämä koodi tekee:
✔ Alustaa SSD1306 -näyttö.
✔ Tulosteet "Hei, Arduino!" näytöllä.
✔ Käyttötarkoitukset I2c -osoite 0x3c (Jotkut moduulit voivat käyttää 0x3d).


5. Grafiikan näyttäminen (rivit, ympyrät, kuvat)

Piirtää muodot, muokata koodia käyttämällä Adafruit GFX -toiminnot.

void setup() {
    display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
    display.clearDisplay();

    // Draw a rectangle
    display.drawRect(10, 10, 50, 20, SSD1306_WHITE);
    
    // Draw a filled circle
    display.fillCircle(90, 16, 10, SSD1306_WHITE);

    display.display();
}

void loop() {}

🔹 Muut piirustustoiminnot:
display.drawLine(x1, y1, x2, y2, color); → piirtää viivan
display.drawCircle(x, y, radius, color); → piirtää ympyrän
display.drawRect(x, y, width, height, color); → piirtää suorakulmion


6. Vieritys tekstiesimerkki

Tämä esimerkki vierittää tekstiä vaakasuoraan OLED -näytön yli.

void setup() {
    display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
    display.clearDisplay();
    
    display.setTextSize(1);
    display.setTextColor(SSD1306_WHITE);
    display.setCursor(0, 10);
    display.println("Scrolling Text...");
    display.display();
    
    // Start scrolling
    display.startscrollleft(0x00, 0x0F); 
}

void loop() {}

🔹 Vieritystoiminnot:
display.startscrollleft(start, stop); → Vieritä tekstiä vasen
display.startscrollright(start, stop); → Vieritä tekstiä oikea
display.stopscroll(); → Lopettaa vierittämisen


7. Vianmääritysvinkit

Ongelma: Näyttö ei näy mitään.
✅ Tarkistaa Johdotus (SDA & SCL kytketty oikein).
✅ Varmistaa OLED I2C -osoite on 0x3c (tai kokeile 0x3d).
✅ Käyttää I2C -skanneri laitteen havaitseminen:

#include <Wire.h>
void setup() {
    Wire.begin();
    Serial.begin(115200);
    Serial.println("Scanning...");
    
    for (byte address = 8; address < 120; address++) {
        Wire.beginTransmission(address);
        if (Wire.endTransmission() == 0) {
            Serial.print("Found I2C device at 0x");
            Serial.println(address, HEX);
        }
    }
}
void loop() {}

Ongelma: Teksti on liian pieni tai liian suuri.
✅ Säätää display.setTextSize(1); (Lisää suuremman tekstin).


8. Käytännön sovellukset

Anturitietojen näyttäminen -Näytä reaaliaikaiset lukemat DHT11, BMP280, jne.
Kellonäyttö - Yhdistä DS3231 RTC -moduuli tehdä digitaalinen kello.
Valikkojärjestelmät - Käytä painikkeita navigoidaksesi valikoiden läpi.
Akun jännitteen ilmaisin - Seuraa kannettavien hankkeiden tehotasoja.


9. Johtopäätös

Käyttämällä a 0,91 "OLED Arduinon kanssa on hieno tapa lisätä visuaalinen lähtö projektiisi. Haluatko näyttää teksti-, grafiikka- tai anturitiedot, tämä pieni näyttö tarjoaa korkea kontrasti ja alhainen virrankulutus.

Jätä kommentti

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.